Giter Site home page Giter Site logo

tasklistapp's Introduction

Welcome to TaskListApp!

Setup instructions

First make sure you have setup react native environment as given here

Clone the repo and install dependencies

 git clone [email protected]:preetb123/TaskListApp.git
 cd TaskListApp
 yarn install

 npx pod-install

To run the app on simulator(iOS)/emulator(android)

# make sure you have started the packager before
yarn start
# in another tab, run the application
# for iOS
yarn ios

# for android
yarn android

Android:

iOS:

Frameworks and libraries used

All icons used are SVGs

Quick Start

App strcture is as below:

TaskListApp
├── src
│   ├── components
│   ├── utils
│   ├── models
│   ├── navigation
│   ├── screens
│   ├── services
│   ├── theme
│   ├── app.tsx
├── storybook
│   ├── views
│   ├── index.tsx
│   ├── addons.ts
│   ├── rn-addons.ts
│   ├── toggle-storybook.tsx
├── README.md
├── android
│   ├── app
│   ├── build.gradle
│   ├── gradle
│   ├── gradle.properties
│   ├── gradlew
│   ├── gradlew.bat
│   ├── keystores
│   └── settings.gradle
├── index.js
├── ios
│   ├── TaskListApp
│   ├── TaskListApp.xcodeproj
│   └── TaskListAppTests
├── e2e
│   ├── config.json
│   ├── environment.ts
│   ├── login-flow.e2e.ts
│   ├── create-task-flow.e2e.ts
│   ├── logout-flow.e2e.ts
│   ├── search-update-task-flow.e2e.ts
├── .env
└── package.json

./src directory

hosts most of the source of the app

components This is where your React components will live. Each component will have a directory containing the .tsx file, along with a story file.

models This is where your app's models will live. Each model has a directory which will contain the mobx-state-tree model file, test file, and any other supporting files like actions, types, etc.

navigation This is where your react-navigation navigators will live.

screens This is where your screen components will live. A screen is a React component which will take up the entire screen and be part of the navigation hierarchy. Each screen will have a directory containing the .tsx file, along with any assets or other helper files.

services Any services that interface with the outside world will live here (think REST APIs, talking to firebase, etc.).

theme Here lives the theme for your application, including spacing, colors, and typography. We use restyle for theming.

utils This has storage related modules

app.tsx This is the entry point to your app. This is where you will find the main App component which renders the rest of the application.

./storybook directory

This is where your stories will be registered and where the Storybook configs will live.

Running Storybook

From the command line in your generated app's root directory, enter yarn run storybook This starts up the storybook server and opens a story navigator in your browser. With your app running, choose Toggle Storybook from the developer menu to switch to Storybook

Running e2e tests

Make sure you follow all instructions care fully as give here

We first need to build the app to run tests on

iOS:

yarn build:e2e:ios
yarn test:e2e:ios

Android:

yarn build:e2e:android
yarn test:e2e:android

You'll get below output once all tests pass

% yarn test:e2e:ios
yarn run v1.22.10
$ detox test -c ios
 PASS  e2e/logout-flow.e2e.ts (17.318 s)
  logout flow
    ✓ should logout the user and navigate to login screen (5106 ms)

 PASS  e2e/login-flow.e2e.ts (12.299 s)
  Login flow
    ✓ should have login screen (1042 ms)
    ✓ should navigate to task list screen on successful login (7190 ms)

 PASS  e2e/search-update-task-flow.e2e.ts (17.429 s)
  search and update task status
    ✓ search and update a task status (6722 ms)

 PASS  e2e/create-task-flow.e2e.ts (17.874 s)
  Create task flow
    ✓ should create a task (7570 ms)

✨  Done in 66.40s.

tasklistapp's People

Contributors

preetb123 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.