Skip to content

devgallery.io serves as a platform where talented developers can spotlight their projects. It allows developers to not only feature their works but also create personal profiles for added visibility.

License

Notifications You must be signed in to change notification settings

Josepi161/devgallery.io

 
 

Dev Gallery Screenshot LICENSE Version 1.0.0 PR:s Welcome Contributors Welcome GitHub repo size

devgallery.io serves as a platform where talented developers can spotlight their projects. It allows developers to not only feature their works but also create personal profiles for added visibility.

Table of Contents

Features

  • Browse various development projects
  • Add your own project
  • Create personal profiles

Tech Stack

  • Next.js
  • TypeScript
  • Tailwind CSS
  • MongoDB Atlas - For user/product data
  • AWS S3 - For images

Local Development

Follow these steps to run the application in your local environment:

  1. Clone this repository.

    git clone https://github.com/yourusername/devgallery.io.git
  2. Install the project dependencies.

    cd devgallery.io
    npm i
  3. Set up your environment variables. You will need to create a MongoDB Atlas cluster and an AWS S3 bucket for your local development environment.

    First, make a copy of the .env.local-example file and rename it to .env.local.

    cp .env.local-example .env.local

    You will need to replace the placeholder values in this file with your actual credentials.

    • For MongoDB Atlas, you will need to replace MONGODB_URI with your MongoDB connection string. You can get this from the MongoDB Atlas dashboard. Also, remember to add 0.0.0.0/0 to the Network Access to allow connections from all IP addresses.

    • For AWS S3, you will need to replace AWS_BUCKET_NAME, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, and AWS_REGION with your actual bucket name and AWS S3 credentials. You can get these from the AWS Management Console. For the Permissions overview, make sure to set the access to public and turn "Block all public access" off. Add the following to the Bucket policy (replace "your-bucket-name" with your actual bucket name):

    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Sid": "PublicReadGet",
                "Effect": "Allow",
                "Principal": "*",
                "Action": [
                    "s3:PutObject",
                    "s3:PutObjectAcl",
                    "s3:GetObject",
                    "s3:GetObjectVersion"
                ],
                "Resource": "arn:aws:s3:::your-bucket-name/*"
            }
        ]
    }

    And add the following to CORS:

    [
        {
            "AllowedHeaders": [
                "*"
            ],
            "AllowedMethods": [
                "GET",
                "POST",
                "PUT",
                "DELETE",
                "HEAD"
            ],
            "AllowedOrigins": [
                "*"
            ],
            "ExposeHeaders": []
        }
    ]
  4. Run the development server.

    npm run dev

Contributing

Contributions to Dev Gallery are always welcome, whether it be improvements to the documentation, new features, bug fixes, or even feedback on the project.

  1. Fork the project.
  2. Create your feature branch:
    git switch -c my-new-feature
  3. Add your changes:
    git add files-that-you-changed
  4. Commit your changes:
    git commit -m 'Add some feature'
  5. Push to the branch:
    git push -u origin my-new-feature
  6. Submit a pull request.

We kindly request that you express your interest in working on a particular issue by leaving a message on the respective issue thread. This will allow us to assign the issue to you directly, thereby preventing multiple individuals from simultaneously working on the same problem.

If you have some small bug, feature, or fix to make, that is not currently on Issues, feel free to submit a pull request.

For major changes, please open an issue first to discuss what you would like to change. Please make sure to update tests as appropriate.

Also, please read our Contributing Guidelines for more information.

Questions

If you have any questions about the repo, open an issue or contact me directly at niko.hoffren@gmail.com.

License

This project is licensed under the MIT License.

List of Contributors

Massive thanks to all of the these fine individuals who contributed to this project!

About

devgallery.io serves as a platform where talented developers can spotlight their projects. It allows developers to not only feature their works but also create personal profiles for added visibility.

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 86.0%
  • JavaScript 12.5%
  • CSS 1.5%