{"id":17070511,"url":"https://github.com/oakmac/phase3-react-project-requirements","last_synced_at":"2025-03-23T11:14:10.916Z","repository":{"id":66970617,"uuid":"173370749","full_name":"oakmac/phase3-react-project-requirements","owner":"oakmac","description":"Phase 3 React Project Requirements for DigitalCrafts Flex coding bootcamp","archived":false,"fork":false,"pushed_at":"2019-03-02T02:39:50.000Z","size":5,"stargazers_count":6,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-28T17:26:11.807Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/oakmac.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2019-03-01T21:32:08.000Z","updated_at":"2022-03-09T02:41:52.000Z","dependencies_parsed_at":"2023-05-16T07:00:18.975Z","dependency_job_id":null,"html_url":"https://github.com/oakmac/phase3-react-project-requirements","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oakmac%2Fphase3-react-project-requirements","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oakmac%2Fphase3-react-project-requirements/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oakmac%2Fphase3-react-project-requirements/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oakmac%2Fphase3-react-project-requirements/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/oakmac","download_url":"https://codeload.github.com/oakmac/phase3-react-project-requirements/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245090875,"owners_count":20559298,"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":"2024-10-14T11:31:59.457Z","updated_at":"2025-03-23T11:14:10.893Z","avatar_url":"https://github.com/oakmac.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# React Project Requirements\n\nThese are the requirements for the Phase 3 React project for the Flex course at\n[DigitalCrafts] Houston. It is focused on using [React.js] with [Redux].\n\n\u003e NOTE: You must complete this project in accordance with the requirements laid out\n  below in order to fulfill Texas state requirements for credit for the course. If\n  you have any questions or concerns about the requirements, please see an\n  instructor.\n\n[DigitalCrafts]:https://www.digitalcrafts.com/\n[React.js]:https://reactjs.org/\n[Redux]:https://redux.js.org/\n\n## Project Description\n\nWrite an interesting web application using [React.js] and [Redux]. By this point\nin the class you should have a solid grasp of git, GitHub, web fundamentals, and\ngeneral development workflow.\n\nThe structure for this project is intentionally flexible in order to let you\nexplore ideas, challenge yourself, and build something you want to create. Let's\nget creative and build the web :)\n\nThe focus of your project should be in the web browser (ie: frontend), and\nspecifically something that requires managing state using React.js and Redux. A\nsmall game is an excellent project idea.\n\n## Project Requirements\n\n- You must use [React.js] and [Redux] in order to manage the state of a frontend application.\n  - using [react-redux] is highly recommended, but not a hard required\n- Your application must contain at least 6 React components.\n- Organize components into separate files and `import` / `export` using es6 modules\n  - In general it should be \"one component per file\"\n  - There can be exceptions to this; use your best judgment on code organization\n- You must have at least 5 separate Redux action types.\n- At least one component must use local `state` and not participate in the Redux state management\n  - Tip: pick a small component with some trivial, ephemeral state for this\n  - When in doubt, store things in your Redux store\n- At least one component must use a [lifecycle method](https://reactjs.org/docs/react-component.html#componentdidmount) like `componentDidMount`, `componentWillUnmount`, etc\n\n## Bonus Requirements\n\n\u003e NOTE: These are not required for the project, but advised for better understanding / comprehension of the topic.\n\n- Use a component from an external library, loaded via `npm`\n  - Example: [bulma-react-components](https://www.npmjs.com/package/react-bulma-components), [react-bootstrap](https://react-bootstrap.github.io/), etc\n- Persist your Redux store somewhere like `localStorage` or an external database\n  - When the user refreshes your page you should be able to load exactly the same state they were in when they left the page\n- Instead of writing one large application, write two small ones\n  - More projects is good for your portfolio\n- Deploy your project somewhere where people can see and play with it\n  - GitHub Pages\n  - Firebase hosting\n  - etc\n\n## Final Tips\n\n- Remember to keep your `render` methods small.\n  - Compose your application using re-usable components, not copy/paste JSX.\n  - Less than 20 lines of JSX is a good rule of thumb.\n- Good luck and have fun with this one :) We are in the home stretch!\n\n[react-redux]:https://react-redux.js.org/\n\n--------------------------------------------------------------------------------\n\nThis requirements document is licensed as [CC0 1.0 Universal](https://creativecommons.org/publicdomain/zero/1.0/):\n\n\u003e You can copy, modify, distribute and perform the work, even for commercial purposes, all without asking permission.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foakmac%2Fphase3-react-project-requirements","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Foakmac%2Fphase3-react-project-requirements","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foakmac%2Fphase3-react-project-requirements/lists"}