Code Monkey home page Code Monkey logo

lectores-urbanos-nextjs-sanity's Introduction

Lectores Urbanos

Lectores urbanos is a non-profit organization whose goal is to encourage critical thinking. Its central strategy is to promote the habit of reading, art, and social values. Lectores Urbanos currently operates in Mexico.

The goal is to allow people to access free online books by scanning a QR code. People can find the QR code by visiting their physical school buildings, buying food from their favorite shops, and more.

This web app is a prototype/MVP. It uses Next.js for the front end and Sanity to handle its content. For the styling, we are using Chakra UI, which offers suitable solutions for building accessible components.

The use of a headless CMS like Sanity is to allow admin users to maintain the content without needing programming skills. It comes with a native Sanity Studio that offers features like instant side-by-side content previews, intuitive editing, image transformation, and content deployment scheduling.

Note

This app uses the /pages directory for Next.js routing for now. Thinking of migrating it to the app directory later on once it gets more stable.

Run app in development mode

npm install && npm run dev

Deploy to production

git add .
git commit
git push

Alternatively, you can deploy using the Vercel CLI:

npx vercel --prod

Visuals (videos)

client.user.facing.app.demo.mov
Admin.studio.demo.company.creation.mov
Admin.studio.demo.book.creation.mov

Visuals (screenshots)

Homepage Home

Book page

Company page

Studio page Studio

404 404

Next steps

  • add authentication to distinguish admin users from regular users
  • implement route permissions:
    • admin should have access to studio
    • registered users should have access to all books
    • guests users coming from scanning a physical QR code should only have access to the company page + book page the QR code is associated to
  • integrate stripe for registration
  • Generate dynamic QR code as part of the company creation + allow admins to download it
  • polish transitions for PDF rendering (loading state is in english => replace with spinner + error state if not https + kill or decrease scroll up)
  • add analytics
  • send automatic emails to users after monthly rotation of books

lectores-urbanos-nextjs-sanity's People

Contributors

floustao avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.