TikoChallenge

This workspace has been generated by Nx, Smart Monorepos · Fast CI.

How to run the project

  1. Clone the repository
  2. Run yarn install
  3. Run yarn start to start the Expo server and bundler. Either press i or scan the QR code on your phone to run the app on your device with Expo Go.

Features

Required

  • The user must be able to register an account
  • The user must be able to log in into his account
  • A system of token rotation must be implemented. For this the API provides you an access_token and a refresh_token. There are endpoints to refresh and validate the access_token. The lifetime of the access_token is 1 hour and the lifetime of the refresh_token is 1 day
  • The user must be able to create todos
  • The user must be able to change the "done" state of a todo
  • The user must be able to logout

Not required but nice to have

  • Done in React Native
  • Good UI/UX experience
  • The user can change the "description" of a todo
  • The user must be able to delete todos
  • Display loading when data is fetched from the network
  • Handle errors properly and display them in the UI.
  • In case the token is invalid the app should go to log out state

Integrate with editors

Enhance your Nx experience by installing Nx Console for your favorite editor. Nx Console provides an interactive UI to view your projects, run tasks, generate code, and more! Available for VSCode, IntelliJ and comes with a LSP for Vim users.

Start the application

Run npx nx serve todoapp to start the development server. Happy coding!

Build for production

Run npx nx build todoapp to build the application. The build artifacts are stored in the output directory (e.g. dist/ or build/), ready to be deployed.

Running tasks

To execute tasks with Nx use the following syntax:

npx nx <target> <project> <...options>

You can also run multiple targets:

npx nx run-many -t <target1> <target2>

..or add -p to filter specific projects

npx nx run-many -t <target1> <target2> -p <proj1> <proj2>

Targets can be defined in the package.json or projects.json. Learn more in the docs.

Set up CI

Nx comes with local caching already built-in (check your nx.json). On CI you might want to go a step further.

Explore the project graph

Run npx nx graph to show the graph of the workspace. It will show tasks that you can run with Nx.

Connect with us