My Covid Time is a non-profit & open source project with focus on building public platform to allow common citizens to share stories of difficut time of pendemic . It is an attempt to express regard and admiration for their efforts, as well as to encourage fellow citizens to keep hope and contribute to society in every way possible.
Current version is developed for India but can be modified easily for any other country.
Our stack / architecture is:
- NextJS hosted on Vercel (already setup here)
- Prisma as our ORM (makes things pretty smooth)
- Postgresql as a DB For Story submissions
- Prismic as headless CMS
- Usefathom for analytics
- TypeForm for user feedbacks
- Clone this repo
- Install dependencies with
npm i
- Rename
.env.template
to.env
- Get a local postgres db running - Docker is probably easiest, but local postgres would also work
- With Docker installed, run
docker run --name my-covid-time-dev -p 5432:5432 -e POSTGRES_PASSWORD=mycovidtime -d postgres:12.6-alpine
(this will match the DB URL string in .env) - Run
npx prisma migrate dev --name init
to apply migrations inprisma/migrations
. - Run
npx prisma db seed --preview-feature
to see test data fromprisma/seed.ts
. - Run
npm run dev
to start the app locally. - You can use
/api/stories
to create new stories. - Run
npm test
to run the test suite. This also gets run automatically on each Pull Request
This is a Next.js project bootstrapped with create-next-app
.
First, install the dependencies
npm install
# or
yarn install
Then, run the development server:
npm run dev
# or
yarn dev
Open http://localhost:3000 with your browser to see the result.
You can start editing the page by modifying pages/index.js
. The page auto-updates as you edit the file.
API routes can be accessed on http://localhost:3000/api/hello. This endpoint can be edited in pages/api/hello.js
.
The pages/api
directory is mapped to /api/*
. Files in this directory are treated as API routes instead of React pages.
To learn more about Next.js, take a look at the following resources:
- Next.js Documentation - learn about Next.js features and API.
- Learn Next.js - an interactive Next.js tutorial.
You can check out the Next.js GitHub repository - your feedback and contributions are welcome!
The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.
Check out our Next.js deployment documentation for more details.