Openshare is a website for sharing open source projects with the community.
Database and routing schemas are located in ./ressources
, you can open these schemas with excalidraw.
- Credentials and Github authentication
-
Add authentication with next-auth - Finish the structure schema of the database
- Finish the structure schema of the routing
- Finish the model on Figma
- Add light & dark modes using next-themes
- Signup and Signin pages
- Home page (with all projects)
- Project page
- Profile page
- Typescript
- React
- Next.js
- Scss modules
- Next.js
- Vitest
- MariaDB (SQL)
- Clone the project:
git clone https://github.com/bastien-pruvost/openshare.git
- Go to the project directory:
cd openshare
- Copy
.env.example
to.env
and update environment variables
cp .env.example .env
- Install dependencies:
pnpm install
# or
yarn install
# or
npm install
- Run the development server:
pnpm dev
# or
yarn dev
# or
npm run dev
Open http://localhost:3000 with your browser to see the result.
API Routes can be accessed on http://localhost:3000/api
To run tests, run the following command:
pnpm test
# or
yarn test
# or
npm run test
To build the project for production usage, run the following command:
pnpm build
# or
yarn build
# or
npm run build
It will create a .next
folder in root folder with all static files.
To start the app in production, make sure you have built the project with the build command from the previous section, then run the following command:
pnpm start
# or
yarn start
# or
npm start
This project use Next.js 13 App Router built on top of React Server Components.
Client Routes are located in the folder src/app
.
API Routes are located in the folder src/app/api
.
All files named router.ts
in the API directory are treated as API routes instead of React pages.
To report a bug or get help open an issue.
If you have any suggestion, feel free to open an issue with the tag "enhancement"
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and open a pull request.
- Fork the project
- Create your feature branch (
git checkout -b feature/my-feature
) - Code your feature
- Commit your changes (
git commit -m 'feat: add amazing feature'
) - Push to the branch (
git push origin feature/my-feature
) - Open a pull request
You can also simply open an issue with the tag "enhancement".
Don't forget to give the project a star! Thanks again!
Distributed under the MIT License.
See LICENSE
file for more information.