Skip to content

dmatthew/my-secret-language

Repository files navigation

My Secret Language

Create your own secret language!

A single page JavaScript application built with React using Next.js. The My Secret Language app uses a PostgreSQL database for storing your dictionary of words and user authentication is handled by iron-session. It uses function components and React hooks.

See the app in action at my-secret-language.vercel.app.

Tech Stack

  • React: For the User Interface
  • Next.js: A React framework for client and server rendering, routing, and compilation and bundling
  • TypeScript: Improvement over JavaScript for better editor tooling, easier maintenance, and catching errors earlier
  • Jest: Unit testing framework
  • Playwright: End-to-end testing framework
  • CSS: Just plain old CSS
  • iron-session: JavaScript library for managing sessions to help with user authentication
  • Postgres: Relational database for storing data
  • CircleCI: Continuous integration platform to automate testing
  • Vercel: Hosting platform

Features of the app

  • Add, edit, and delete new words.
  • Translate sentences from your native language into your secret language.
  • View all your words in your own language's dictionary.
  • Study your own secret language by using the app's flashcards feature.
App Home App Home App Home
Home Add Word Dictionary
App Home App Home App Home
Flash Cards Translate Notes

Testing

Unit tests

npm run test:ci

Integration tests

npm run test:e2e

License

MIT