Skip to content

This is repo where we try to figure out the architecture, folder structure and dependencies that we need to follow in the initial state of Ford project development.

Notifications You must be signed in to change notification settings

Harinathlee/Ford-App

Repository files navigation

Ford-App

This is a repository where we try to figure out the architecture, folder structure, and dependencies that we need to follow in the initial state of the Ford project development

This is a React application that uses Redux for state management. The app is built using the latest version of React and utilizes the react-dom/client API to render the application.

React + Vite

This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.

Currently, two official plugins are available:

Architecture

The application is structured around the following components:

  • App.jsx: The main application component that renders the UI.
  • store/store.js: The Redux store that manages the application's state.
  • index.js: The entry point of the application that sets up the React DOM and renders the App component.

Folder Structure

  • node_modules/: The dependencies folder (managed by npm or yarn).
  • src/: The source code folder.
    • App.jsx: The main application component.
    • store/: The Redux store folder.
      • store.js: The Redux store configuration.
    • index.js: The entry point of the application.
    • index.css: The global stylesheet for the application.
  • build/: The production build folder (generated by npm run build).
  • package.json: The project's package file, which contains metadata for the project, including dependencies and scripts.
  • README.md: This file, which provides information about the project and its structure.
  • .eslintrc.json: The ESLint configuration file.
  • .prettierrc.json: The Prettier configuration file.
  • vite.config.js: The Vite configuration file.
  • tailwind.config.js: The Tailwind CSS configuration file.
  • postcss.config.js: The PostCSS configuration file.
  • jest.config.js: The Jest configuration file.
  • tests/: The folder for unit tests.
    • setup.js: The setup file for Jest tests.

Dependencies

The project depends on the following packages:

Production Dependencies

  • react: The React library.
  • react-dom: The React DOM library.
  • react-redux: The React Redux library.
  • redux: The Redux library.
  • firebase: The Firebase library for authentication and data storage.
  • node-forge: A JavaScript implementation of the TLS protocol.

Development Dependencies

  • @eslint/js: The ESLint JavaScript plugin for code linting.
  • @testing-library/jest-dom: The Jest testing library for React DOM.
  • @testing-library/react: The Jest testing library for React.
  • @types/react: The type definitions for React.
  • @types/react-dom: The type definitions for React DOM.
  • @vitejs/plugin-react: The Vite plugin for React.
  • autoprefixer: A plugin for PostCSS to add vendor prefixes to CSS rules.
  • eslint: The ESLint code linter.
  • eslint-plugin-jsx-a11y: The ESLint plugin for JSX accessibility rules.
  • eslint-plugin-react: The ESLint plugin for React rules.
  • eslint-plugin-react-hooks: The ESLint plugin for React Hooks rules.
  • eslint-plugin-react-refresh: The ESLint plugin for React Refresh rules.
  • globals: A package for global variables in JavaScript.
  • jsdom: A JavaScript implementation of the DOM.
  • npm-audit-html: A package for generating HTML reports for npm audit results.
  • postcss: A plugin for transforming CSS with JavaScript.
  • prettier: A code formatter for JavaScript, CSS, and other languages.
  • tailwindcss: A utility-first CSS framework.
  • vite: A development server for building and serving the application.
  • vitest: A testing framework for Vite.

To install all these dependencies, run the following command:

npm install --save-dev @eslint/js @testing-library/jest-dom @testing-library/react @types/react @types/react-dom @vitejs/plugin-react autoprefixer eslint eslint-plugin-jsx-a11y eslint-plugin-react eslint-plugin-react-hooks eslint-plugin-react-refresh globals jsdom npm-audit-html postcss prettier tailwindcss vite vitest

Scripts

The project uses the following scripts:

  • dev: Starts the development server.
  • build: Builds the application for production.
  • lint: Runs the ESLint code linter.
  • fixlint: Fixes ESLint errors and warnings.
  • preview: Starts the production server.
  • audit: Runs the npm audit tool to check for vulnerabilities.
  • test: Runs the unit tests using Vitest.
  • test:ui: Runs the unit tests using Vitest with the UI.

Getting Started

To get started with the project, run the following commands:

npm install to install the dependencies.

npm run dev to start the development server.

This will start the development server and open the application in your default browser.

Building the Application

To build the application for production, run the following command:

npm run build

This will create a production-ready build of the application in the build folder.

Running Tests

To run the unit tests, run the following command:

npm run test

This will run the unit tests using Vitest.

npm run test:ui

This will run the unit tests using Vitest with the UI.

Configuration

The project uses the following configuration files:

  • package.json: The project's package file.
  • index.css: The global stylesheet for the application.
  • .eslintrc.json: The ESLint configuration file.
  • .prettierrc.json: The Prettier configuration file.
  • vite.config.js: The Vite configuration file.
  • tailwind.config.js: The Tailwind CSS configuration file.
  • postcss.config.js: The PostCSS configuration file.
  • jest.config.js: The Jest configuration file.
  • README.md: This file, which provides information about the project and its structure.

Notes

  • This project uses the latest version of React and Redux.
  • The project uses the react-dom/client API to render the application.
  • The project uses Jest for unit testing.
  • The project uses ESLint for code linting.
  • The project uses Vite for building and serving the application.
  • The project uses Vitest for unit testing.

About

This is repo where we try to figure out the architecture, folder structure and dependencies that we need to follow in the initial state of Ford project development.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •