{"id":15011411,"url":"https://github.com/rajarakoto/react-boilerplate","last_synced_at":"2025-08-14T00:21:22.621Z","repository":{"id":218012194,"uuid":"744510999","full_name":"RajaRakoto/react-boilerplate","owner":"RajaRakoto","description":"Minimalistic boilerplate to quick-start React.js development in TypeScript, optimized for blazing-fast performance Bun \u0026 Vite 🚀","archived":false,"fork":false,"pushed_at":"2024-09-22T09:14:24.000Z","size":2113,"stargazers_count":9,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-25T23:24:06.817Z","etag":null,"topics":["boilerplate","bun","bunjs","minimalist","react","reactjs","starter","template","typescript","vite","vitejs"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RajaRakoto.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-01-17T12:59:26.000Z","updated_at":"2025-02-18T21:23:21.000Z","dependencies_parsed_at":null,"dependency_job_id":"90c9979b-fbf9-4d5a-91df-b31d17017ba1","html_url":"https://github.com/RajaRakoto/react-boilerplate","commit_stats":null,"previous_names":["rajarakoto/react-boilerplate"],"tags_count":0,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RajaRakoto%2Freact-boilerplate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RajaRakoto%2Freact-boilerplate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RajaRakoto%2Freact-boilerplate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RajaRakoto%2Freact-boilerplate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RajaRakoto","download_url":"https://codeload.github.com/RajaRakoto/react-boilerplate/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248512646,"owners_count":21116651,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["boilerplate","bun","bunjs","minimalist","react","reactjs","starter","template","typescript","vite","vitejs"],"created_at":"2024-09-24T19:41:03.830Z","updated_at":"2025-04-12T03:31:26.565Z","avatar_url":"https://github.com/RajaRakoto.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"https://rajarakoto.github.io/github-docs/boilerplate/react-boilerplate.jpg\"\u003e\n\u003c/div\u003e\n\n# react-boilerplate 🚀\n\n[![forthebadge](https://forthebadge.com/images/badges/built-with-love.svg)](https://forthebadge.com) [![forthebadge](https://forthebadge.com/images/badges/for-you.svg)](https://forthebadge.com) [![forthebadge](https://forthebadge.com/images/badges/open-source.svg)](https://forthebadge.com) [![forthebadge](https://forthebadge.com/images/badges/uses-git.svg)](https://forthebadge.com) [![forthebadge](https://rajarakoto.github.io/github-docs/badge/build-by.svg)](https://forthebadge.com)\n\n![Git](https://img.shields.io/badge/-Git-777?style=flat\u0026logo=git\u0026logoColor=F05032\u0026labelColor=ffffff) ![Gitub](https://img.shields.io/badge/-Gitub-777?style=flat\u0026logo=github\u0026logoColor=777\u0026labelColor=ffffff)\n\n**Developer Ready: A comprehensive template. Works out of the box for most React.js projects. This project is intended to be used with the latest active release of React.js.**\n\nInstant Value - All basic tools included and configured:\n\n- 🚀 Typescript \u003e= 5.5.4\n- 🌐 React.js \u003e= 18.3.1\n- 🧅 Use Bun as package manager\n- 🌈 ESM\n- 🧹 ESlint with some initial rules recommendation\n- 🧪 Biome for code formatting and linting\n- ✅ Jest or Bun test for fast unit testing and code coverage\n- 📚 Type definitions for Bun.js and Jest\n- 🎨 Prettier to enforce consistent code style\n- ⚙️ EditorConfig for consistent coding style\n- 📦 NPM scripts for common operations\n- 📝 Simple example of Tsx code\n- 🐗 Run tasks with Grunt (example for backup)\n- 🖥️ Ungit for version control (git) with a GUI\n- ⚡ Use Vite for lightning fast HMR (hot reload)\n- ⚡ Optimized build by Vite\n- 🧪 E2E test with Playwright\n- 🐳 Containerization for easy deployment and scaling with Docker\n- 🧺 Pre-configured setup for Redux or Zustand as state manager, easily removable if not needed\n- 🌀 Tailwind CSS already set up with PostCSS for flexible usage\n- 🩷 Sass extends CSS with features like variables, nested rules, mixins, imports, inheritance, built-in functions, and more ...\n\n\u003e You can customize your website faster with [PLUM](https://github.com/RajaRakoto/plum), a mixins toolset powered by SASS. Quickly produce consistent, scalable CSS output, regardless of project size. For the best experience, it is recommended to use SASS version `1.77.6` to ensure smooth integration with PLUM.\n\n---\n\n### 📌 Usage\n\nTo use this template, use the following commands:\n\n```bash\nbun create github.com/RajaRakoto/react-boilerplate \u003cproject-name\u003e\ncd \u003cproject-name\u003e\nbun run pkg-upgrade # to upgrade outdated dependencies in interactive mode\n```\n\n\u003e 1. This starter kit uses the MIT license with my name and GitHub profile—update or remove if needed.\n\u003e 2. Each subdirectory in `src` has a `README.md` to explain its structure.\n\u003e 3. Adjust the `package.json` (name, description, author, etc.) to fit your project.\n\n---\n\n### 📌 Deployment\n\nInstructions are provided for deploying both with and without Docker. Both options still require a platform to host the application.\n\n**Without Docker**: Deploying is as easy as running the following command and pointing your web server to the generated `index.html` file found at `dist/index.html`\n\n```bash\nbun run build\n```\n\n**With Docker**: A Dockerfile with an [NGINX](https://www.nginx.com/) base image is also provided for quick and easy deployments. Simply execute the following commands:\n\n```bash\nbun run build\ndocker build . -t \u003ccontainer_name\u003e # eg: docker build . -t todo-app\ndocker run  -p \u003cport_number\u003e:80 \u003ccontainer_name\u003e # eg: docker run todo-app -p 8080:80\n```\n\n---\n\n### 📌 NPM Scripts\n\n**Preview**\n\n- 📜 `preview` - Run your app with preview mode.\n\n**Clean**\n\n- 📜 `clean` - Remove coverage data, prod folder, playwright-report ...\n\n**Development**\n\n- 📜 `dev` - Launch Vite.js development server using hot module remplacement (HMR).\n\n**Build**\n\n- 📜 `build` - Build faster with Vite.js.\n\n**Testing**\n\n- 📜 `test:unit` - Run unit testing with Bun.js.\n- 📜 `test:unit:watch` - Interactive watch mode to automatically re-run unit testing with Bun.js.\n- 📜 `test:e2e` - Run end to end (e2e) testing with Playwright.\n\n**Linting and Formatting**\n\n- 📜 `biome:start` - Starts the Biome daemon server. You can specify a custom configuration file path using the `--config-path` option.\n- 📜 `biome:stop` - Stops the Biome daemon server.\n- 📜 `biome:fix` - Runs a source code check and applies automatic fixes (linter \u0026 formatter) according to the defined rules.\n- 📜 `biome:unsafe` - Works like `biome:fix`, but may apply more invasive or risky changes.\n- 📜 `eslint` - Lints the project with ESLint and reports unhandled errors.\n- 📜 `prettier` - Formats code according to the `.prettierrc` rules.\n\n**Backup and Dependency Management**\n\n- 📜 `backup` - Backup files with Grunt.\n- 📜 `pkg-check` - Check useless dependencies with depcheck.\n- 📜 `pkg-upgrade` - Upgrade outdated dependencies (interactive mode) with npm-check-updates.\n\n**Versioning**\n\n- 📜 `versioning` - Start ungit server.\n\n**NPM Commands**\n\n- 📜 `npm-version:major` - Increments the major version number of your project using npm.\n- 📜 `npm-version:minor` - Increments the minor version number of your project using npm.\n- 📜 `npm-version:patch` - Increments the version patch number of your project using npm.\n\n**NVM**\n\n- 📜 `nvm` - Manage multiple node.js versions. Easily switch between node versions per project to ensure compatibility.\n\n**Scripts**\n\n- 📜 `script:sass-charset` - Adds the @charset \"UTF-8\" declaration at the beginning of all SCSS files in the project.\n\n---\n\n### 📌 Similar\n\nYou can also check out my other starter projects:\n\n- 🚀 [bun-boilerplate](https://github.com/RajaRakoto/bun-boilerplate)\n- 🚀 [node-boilerplate](https://github.com/RajaRakoto/node-boilerplate)\n- 🚀 [next-boilerplate](https://github.com/RajaRakoto/next-boilerplate)\n- 🚀 [qwik-boilerplate](https://github.com/RajaRakoto/qwik-boilerplate)\n- 🚀 [vscode-boilerplate](https://github.com/RajaRakoto/vscode-boilerplate)\n- 🚀 [cli-boilerplate](https://github.com/RajaRakoto/cli-boilerplate)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frajarakoto%2Freact-boilerplate","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frajarakoto%2Freact-boilerplate","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frajarakoto%2Freact-boilerplate/lists"}