{"id":28956831,"url":"https://github.com/developmentseed/project-seed","last_synced_at":"2025-06-23T21:40:57.599Z","repository":{"id":31989476,"uuid":"35559971","full_name":"developmentseed/project-seed","owner":"developmentseed","description":"A basic starting point for projects.","archived":false,"fork":false,"pushed_at":"2025-05-22T22:54:22.000Z","size":1595,"stargazers_count":25,"open_issues_count":13,"forks_count":12,"subscribers_count":50,"default_branch":"main","last_synced_at":"2025-05-23T00:00:52.806Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","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/developmentseed.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,"zenodo":null}},"created_at":"2015-05-13T16:17:15.000Z","updated_at":"2025-05-22T22:54:26.000Z","dependencies_parsed_at":"2025-01-16T16:53:55.866Z","dependency_job_id":"733f4f53-29cf-4145-a304-07b1232787cc","html_url":"https://github.com/developmentseed/project-seed","commit_stats":null,"previous_names":[],"tags_count":5,"template":true,"template_full_name":null,"purl":"pkg:github/developmentseed/project-seed","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/developmentseed%2Fproject-seed","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/developmentseed%2Fproject-seed/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/developmentseed%2Fproject-seed/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/developmentseed%2Fproject-seed/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/developmentseed","download_url":"https://codeload.github.com/developmentseed/project-seed/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/developmentseed%2Fproject-seed/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261561183,"owners_count":23177544,"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":[],"created_at":"2025-06-23T21:40:57.361Z","updated_at":"2025-06-23T21:40:57.582Z","avatar_url":"https://github.com/developmentseed.png","language":"JavaScript","readme":"# project-seed v8\n\nA basic starting point for web projects that uses vite as a Build System. \n\nUses typescript and jest for testing\n\n## Overview\n\nSteps to follow as soon as you download this structure to start a project:\n- [ ] Update `package.js` with data about the project (name, repo, license...)\n- [ ] If the license is known update `LICENSE`\n- [ ] Check `index.html` for bootstrap information that can be changed or removed.\n- [ ] Update the application title and description in `.env`\n- [ ] Remove unneeded images from the `static/meta` folder and replace the favicon with a project related one.\n- [ ] Update the modules to the most recent version.\n- [ ] **Delete this `README.md` and rename `_README.md`. Fill in the needed data. This is the most important task.** Others need to be able to know what the project is about and how to work with it. This can't be stressed enough.\n\nIt's better to do this straight away so no traces of project-seed are ever pushed to github and just looks more professional.\nThe values that are not immediately know should be left blank and filled ASAP.\n\n## Vite for building\n\n[Vite](https://vite.dev/) is used to bundle all the needed assets for the application.\nThere are two commands, both run via `pnpm`\n\n- `pnpm build` - clean \u0026 build everything and put it into dist folder\n- `pnpm serve` - serve the pages and utilize live reload on changes to fonts, images, scripts and HTML.\n\n## Chakra UI for styling\n\nProject Seed uses [Chakra UI](https://chakra-ui.com/) for styling as a UI framework. It is a component library that provides a set of accessible and reusable components facilitating the development of web applications.\n\nIf you don't want it, you just need to remove the `@chakra-ui/react` dependency from the `package.json` and remove the import from the `main.tsx` file.\n\n### Configurations and environment variables\n\nAt times, it may be necessary to include options/variables specific to `production`, `staging` or `local` in the code. To handle this, there you can use `.env` files.\nSee Vite's documentation on [env variables](https://vite.dev/guide/env-and-mode.html#env-variables-and-modes).\n\n## Github Actions for CI\nTesting and deployment is taken care of by Github Actions. It is set up to:\n\n1. run checks (test \u0026 lint) on every non-draft Pull Request\n2. build and deploy the application on pushes to the `main` branch\n\nTo make sure that the site deploys with passing checks, branch protection should be set up for the `main` branch (`Require status checks to pass before merging`).\n\nDeploy is not set up by default, but the project contains [sample workflows](.github/_workflow-samples/README.md) that can be used to set it up.\n\n## Linting\n\nOur [ESLint rules](.eslintrc) are based on `eslint:recommended` rules, with some custom options. To check linting errors run:\n\n    npm run lint\n\n## Tests\n\nTests are setup using [Jest](https://jestjs.io/), and can be run with\n\n```\nnpm run test\n```\n\n## Coding style\n\nFile [.editorconfig](.editorconfig) defines basic code styling rules, like indent sizes. \n\n[Prettier](https://prettier.io) is the recommended code formatter. Atom and VSCode have extensions supporting Prettier-ESLint integration, which will help maintain style consistency while following linting rules.\n\n## Path alias\n\nPath alias allow you to define aliases for commonly used folders and avoid having very long file paths like `../../../component`. This also allows you to more easily move files around without worrying the imports will break.  \n\nPaths are defined in the [package.json](./package.json) under `alias`. They start with a `$` and point to a folder.\n\nThe following paths are predefined, but feel free to change them to whatever is convenient to your project needs.\n\n```json\n\"alias\": {\n    \"$components\": \"~/app/scripts/components\",\n    \"$styles\": \"~/app/scripts/styles\",\n    \"$utils\": \"~/app/scripts/utils\",\n    \"$test\": \"~/test\"\n  }\n```\n\nFor example, to import a component from a file called `page-header` in the `\"~/app/scripts/components\"` folder, you'd just need to do `import Component from '$components/page-header'`.\n\n## Pull Request templates\n\nProject seed comes with pull request templates to simplify and standardize the pull requests in the project. This [issue on the how repo](https://github.com/developmentseed/how/issues/360#issuecomment-1041292591) provides some context to how this works.\n\nTo add more templates create them in the `.github/PULL_REQUEST_TEMPLATE` folder and link them in the [PULL_REQUEST_TEMPLATE.md](./.github/PULL_REQUEST_TEMPLATE.md) file.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevelopmentseed%2Fproject-seed","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdevelopmentseed%2Fproject-seed","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevelopmentseed%2Fproject-seed/lists"}