Git Product home page Git Product logo

nykea-app's Introduction

NY KEA App

This repository contains the code for the NY KEA website, which is divided into two main parts: the backend API, managed by Strapi, and the cross-platform frontend application, built with Expo and React Native for Web.

Directory Structure

  • frontend/: Contains the React Native codebase that is used to build the web, iOS, and Android applications using Expo and React Native for Web.
  • backend/: Contains the Strapi project, which serves as the backend API and content management system.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Prerequisites

Before you begin, ensure you have the following installed:

Setting Up the Backend

Navigate to the backend/ directory:

cd backend

Install the necessary dependencies:

yarn install

If not already present, create a copy of the .env.example file and name it .env.

Start the Strapi development server:

yarn develop

Your Strapi admin panel should now be available at `http://localhost:1337/admin``.

Setting Up the Frontend

Navigate to the frontend/ directory:

cd frontend

Install the dependencies:

yarn install

Start the Expo development server:

yarn start

You can now run the app on iOS, Android, or web from the Expo developer tools that open in the browser.

Deployment

WIP

Note on Package Manager

This project uses Yarn as its package manager to ensure consistent installation of dependencies and compatibility with the yarn.lock file in the repository. The yarn.lock file locks the versions of the project's dependencies, which helps to avoid discrepancies between different development and production environments. For this reason, contributors are encouraged to use Yarn for installing, updating, and managing the project's dependencies.

If you do not have Yarn installed on your system, you can follow the instructions on the Yarn Installation Page.

Testing

Testing is an integral part of our development process to ensure the quality and reliability of our code. In this project, we use different testing strategies for the backend and the frontend.

Backend Testing

For the backend, we use Jest as our testing framework.

Running Tests:

To run the backend tests, navigate to the backend/ directory and run the following command:

yarn test

This will execute all the tests located in the tests/ folder.

Writing Tests:

Tests should be written in the tests/ directory and structured to reflect the directory structure of the code being tested. Test files should be named in the format [filename].test.js.

Please ensure that any new backend features include corresponding unit tests and that you update existing tests as necessary.

Frontend Testing

The frontend testing is setup with Jest for unit tests and React Native Testing Library for component tests.

Running Tests:

To run the frontend tests, navigate to the frontend/ directory and run:

yarn test

This command will run all the test suites defined in the project.

Writing Tests:

Frontend tests should be placed in a __tests__ directory within the relevant feature or component folder. Test files should be named in the format [ComponentName].test.js.

Make sure to write tests for any new components or utility functions, and update tests after making changes to the corresponding parts of the codebase.

nykea-app's People

Contributors

hyunghoseo avatar doolri1276 avatar jiahn326 avatar calvinyoon avatar

Stargazers

 avatar  avatar

Watchers

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