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.
- Browse various development projects
- Add your own project
- Create personal profiles
- Next.js
- TypeScript
- Tailwind CSS
- MongoDB Atlas - For user/product data
- AWS S3 - For images
Follow these steps to run the application in your local environment:
-
Clone this repository.
git clone https://github.com/yourusername/devgallery.io.git
-
Install the project dependencies.
cd devgallery.io npm i
-
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 add0.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
, andAWS_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": [] } ]
-
-
Run the development server.
npm run dev
Contributions to Dev Gallery are always welcome, whether it be improvements to the documentation, new features, bug fixes, or even feedback on the project.
- Fork the project.
- Create your feature branch:
git switch -c my-new-feature
- Add your changes:
git add files-that-you-changed
- Commit your changes:
git commit -m 'Add some feature'
- Push to the branch:
git push -u origin my-new-feature
- 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.
If you have any questions about the repo, open an issue or contact me directly at [email protected].
This project is licensed under the MIT License.
Massive thanks to all of the these fine individuals who contributed to this project!