Giter VIP home page Giter VIP logo

start-ui's Introduction

Start UI

Opinionated UI starter with

👉 Technology Choices

ℹ️ API calls are mapped on a JHipster backend application.

Installation

yarn install
yarn build

Development

yarn dev

Setup VS code

Create or edit your .vscode/settings.json file with the following code

{
  "i18n-ally.localesPaths": "src/locales"
}

Storybook

yarn storybook

Development with MirageJS (mock)

This is the default behavior.

Do not set the NEXT_PUBLIC_API_BASE_URL variable in the .env file at the root of the project.

Development with a JHipster backend

Create a .env file at the root of the project with the following content:

NEXT_PUBLIC_API_BASE_URL=http://localhost:8080/api

Show hint on development environments

Setup the NEXT_PUBLIC_DEV_ENV_NAME env variable with the name of the environment.

NEXT_PUBLIC_DEV_ENV_NAME=staging
NEXT_PUBLIC_DEV_ENV_COLOR_SCHEME=teal

API Documentation

API documentation is accessible by admins in the app with Swagger-UI.

yarn docs:build

This will build the json documentation from the main file /src/mocks/openapi/openapi.yaml.

Production

NodeJS (recommended)

yarn storybook:build # Optional: Will expose the Storybook at `/storybook`
yarn build
yarn start

Static files

yarn storybook:build # Optional: Will expose the Storybook at `/storybook/index.html`
yarn static:build

Then expose the /out folder.

💡 You will need to setup your server to rewrite all /app/* urls to serve the app.html file.


Technology Choices

React

React is a JavaScript library created in 2013 to build reactive user interfaces. At the time of writing, React is probably the front end library the most used to create new projects and has a huge community which is beneficial for the maintainability of the project in terms of developers and online resources.

GitHub · License MIT

Next.js

Next.js gives you the best developer experience with all the features you need for production: hybrid static & server rendering, TypeScript support, smart bundling, route pre-fetching, and more. No config needed.

GitHub · License MIT

React Router

Next.js is bundled with its own router, but at the time of writing those lines, it does not allow nested routes using a shared layout.

GitHub · License MIT

TypeScript

JavaScript is a not typed language. TypeScript is here to help add static type definition. TypeScript helps a lot when it comes to types, interfaces and define contract between functions which helps a lot for a reliable documentation. No worry, the TypeScript adoption is incremental and writing in TypeScript is not mandatory to use Start UI, but it is a good practice to do so to avoid bugs in the future.

GitHub · License Apache 2.0

React Query

React Query is a powerful tool to do derformant and powerful data synchronization for React. No need of Redux or another global state manager anymore. Usable with fetch, axios, or graphql-request, React Query will do the work and is agnostic of the method you will use.

GitHub · License MIT

Storybook

Storybook is an Open Source tool to help you develop framework agnostic components in isolation and document them.

GitHub · License MIT

Chakra UI

Chakra UI is a simple, modular, composable and accessible component library that is highly customizable.

GitHub · License MIT

Formiz

To create React forms, there is a lot of libraries out there. Formiz will help you create React forms with ease! Composable, headless & with built-in multi steps.

GitHub · License MIT

start-ui's People

Contributors

ivan-dalmet avatar hugoperard avatar yoannfleurydev avatar medamineziraoui avatar dependabot[bot] avatar decampsrenan avatar d-campbell-bs avatar deelanm avatar

Watchers

James Cloos 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.