This is a revamp attempt of Silacak app, built using Next.js.
The project's purpose, principles, and guidelines take some cues from the WargaBantuWarga.com project.
What we're striving for:
Our website must be high-performant because our audience is spread across Indonesia with varying types of devices and network speed. A good measurement of it is Google's Core Web Vitals.
Our website must be accessible so that we can reach more users and help more people.
Any information posted on our website must be up-to-date to the latest version that our content editors published. We can tolerate delays to a certain degree for the sake of web performance, but it should be limited to less than an hour.
What we're going against:
We can't afford to hurt web performance or to provide outdated information just for the sake of the beauty of the website.
We must carefully consider any additional client-side libraries that we include on the website. Unless its benefits outweigh the trade-off that we have to pay, we should avoid adding the functionality. Even if it is proven to be beneficial, we should strive to implement it in the best possible way. An excellent example of it is Google Analytics.
For any improvements on the website, we should continuously measure its impact on the Core Web Vitals. If proven to hurt the metrics, we should revert the changes and find another way to implement them without degrading the performance.
In general, these are three guidelines that we need to pay attention to:
Please ensure that all queries and assertions in your test files comply with those testing guidelines.
First, clone the repository:
git clone https://github.com/kawalcovid19/silacak.git
Then, install dependencies and fetch data to your local machine:
cd silacak
yarn install
Finally, run the development server:
yarn dev
Open http://localhost:3000 with your browser to see the result.
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!
See our contribution guidelines in these languages:
When contributing to our project, please use English when communicating with other people in issues and/or pull requests. Click here to read why. (Bahasa Indonesia)
Our API documentation is in api-reference.md file.
Copyright (C) 2021 Kawal COVID-19
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License along with this program. If not, see https://www.gnu.org/licenses/.
Thanks go to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind are welcome!