You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Upgrading JSON Schema Tour Website with a Database
Brief Description
The JSON Schema Tour website (https://github.com/json-schema-org/tour/) is a cool tool. Right now, it uses Google Sheets and local storage to manage data, which works but has limitations. This project is about moving the data to a proper database to make the website faster, more scalable, and easier to maintain. It’s a simple but impactful upgrade that will make the site more reliable and open doors for new features in the future like admin dashboard , generating stats and so on.
Expected Outcomes
Replace Google Sheets and local storage with a database (like PostgreSQL or MongoDB).
Move all existing data to the new database.
Build a backend API to connect the database with the website.
Add authentication and authorization to secure the website and allow role-based access (e.g., admin vs. regular users).
Make sure everything works smoothly and is well-documented.
Admin dashboard
Skills Required
Frontend Skills: TypeScript, Next.js, JavaScript.
Backend Skills: Node.js, Express, JWT (JSON Web Tokens).
Authentication: NextAuth, Firebase, or custom authentication.
Databases: MongoDB, SQL, or PostgreSQL.
APIs and Git: Familiarity with RESTful APIs and version control.
Mentors
TBD
Expected Difficulty
Easy
This is a straightforward project. It’s mostly about moving data to a database, connecting it to the website, and adding authentication. Perfect for someone who’s comfortable with basic web development.
Expected Time Commitment
175 Hours
It’s a small project, so 175 hours should be enough to get everything done and tested.
The text was updated successfully, but these errors were encountered:
Something to keep in mind is that JSON Schema is supported entirely by donations and that doesn't amount to much. The tour site is a static site and adding and a backend, database, and auth will mean recurring hosting costs. So, you'll want to include in your proposal the projected hosting costs for making this change so we can decide if it's worth spending our limited resources on this project.
The proposal is pretty vague on the details of what benefits we get out of this investment. For example, what specifically would be included in an admin dashboard that would justify cost of setting up authentication?
Thank you for bringing up these important points! . We can keep costs low by using MongoDB Atlas Free Tier for the database and custom JWT authentication (no recurring fees). Hosting can stay free with Vercel/Netlify for the frontend and backend.
The upgrade brings:
Better data management (no more Google Sheets/local storage).
Admin dashboard to manage users, track progress, and update content.
Scalability for future growth.
Estimated costs: $0 (free-tier services). This is a small investment for a faster, more maintainable, and feature-rich site.
With the database in place, we can generate valuable insights and analytics, such as:
User Engagement
Progress Tracking
Trends Over Time
These stats can be displayed in the admin dashboard and used to improve the tour experience and make data-driven decisions.
Why This Matters
Improve Content: Identify weak points in the tour and update them.
Engage Users: Use insights to make the tour more interactive and user-friendly.
Show Impact: Demonstrate the value of the JSON Schema Tour to the community and potential donors.
Project Title
Upgrading JSON Schema Tour Website with a Database
Brief Description
The JSON Schema Tour website (https://github.com/json-schema-org/tour/) is a cool tool. Right now, it uses Google Sheets and local storage to manage data, which works but has limitations. This project is about moving the data to a proper database to make the website faster, more scalable, and easier to maintain. It’s a simple but impactful upgrade that will make the site more reliable and open doors for new features in the future like admin dashboard , generating stats and so on.
Expected Outcomes
Skills Required
Mentors
TBD
Expected Difficulty
Easy
This is a straightforward project. It’s mostly about moving data to a database, connecting it to the website, and adding authentication. Perfect for someone who’s comfortable with basic web development.
Expected Time Commitment
175 Hours
It’s a small project, so 175 hours should be enough to get everything done and tested.
The text was updated successfully, but these errors were encountered: