{"id":21112687,"url":"https://github.com/yining1023/thesisbook","last_synced_at":"2025-07-08T18:31:38.098Z","repository":{"id":84565860,"uuid":"86354888","full_name":"yining1023/thesisBook","owner":"yining1023","description":"Thesis book for ITP NYU 2017","archived":false,"fork":false,"pushed_at":"2017-05-16T17:51:50.000Z","size":2468,"stargazers_count":5,"open_issues_count":2,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-04T07:51:12.261Z","etag":null,"topics":["firebase","react","redux"],"latest_commit_sha":null,"homepage":"https://itp.nyu.edu/thesis2017","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/yining1023.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","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":"2017-03-27T15:52:17.000Z","updated_at":"2017-08-02T02:01:24.000Z","dependencies_parsed_at":"2023-03-02T14:30:15.743Z","dependency_job_id":null,"html_url":"https://github.com/yining1023/thesisBook","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/yining1023/thesisBook","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yining1023%2FthesisBook","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yining1023%2FthesisBook/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yining1023%2FthesisBook/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yining1023%2FthesisBook/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/yining1023","download_url":"https://codeload.github.com/yining1023/thesisBook/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yining1023%2FthesisBook/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264323924,"owners_count":23590767,"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":["firebase","react","redux"],"created_at":"2024-11-20T01:32:34.248Z","updated_at":"2025-07-08T18:31:38.092Z","avatar_url":"https://github.com/yining1023.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Thesis book for ITP NYU 2017 Spring\n\nMIT License, Yining Shi\n\nDemo: \n[https://itp.nyu.edu/thesis2017](https://itp.nyu.edu/thesis2017)\nor\n[https://thesis-book-itp-2017.firebaseapp.com](https://thesis-book-itp-2017.firebaseapp.com)\n\n### Directory Layout\n\n```shell\n├── components/                 # Shared or generic UI components\n│   ├── Layout/                 # Website layout component\n│   └── ...                     # etc.\n├── docs/                       # Documentation to the project\n├── node_modules/               # 3rd-party libraries and utilities\n├── src/                        # Application source code\n│   ├── about/                  # About page\n│   ├── error/                  # Error page\n│   ├── home/                   # Home page\n│   ├── history.js              # Handles client-side navigation\n│   ├── main.js                 # \u003c== Application entry point \u003c===\n│   ├── router.js               # Handles routing and data fetching\n│   ├── routes.json             # This list of application routes\n│   └── store.js                # Application state manager (Redux)\n├── public/                     # Static files such as favicon.ico etc.\n│   ├── dist/                   # The folder for compiled output\n│   ├── favicon.ico             # Application icon to be displayed in bookmarks\n│   ├── robots.txt              # Instructions for search engine crawlers\n│   └── ...                     # etc.\n├── test/                       # Unit and integration tests\n├── tools/                      # Utility and helper classes\n└── package.json                # The list of project dependencies and NPM scripts\n```\n\n### Getting Started\n\n**Step 1**. Make sure that you have [Node.js](https://nodejs.org/) v6 or newer and\n[Yarn](https://yarnpkg.com/) installed on your development machine.\n\n**Step 2**. Clone this repository (alternatively, use [Yeoman\ngenerator](https://github.com/kriasoft/react-static-boilerplate/tree/generator-react-static) to\nbootstrap your project):\n\n```shell\n$ git clone git clone https://github.com/yining1023/thesisBook.git\n$ cd thesisBook\n$ yarn install                  # Install project dependencies listed in package.json\n```\n\n**Step 2.1**. Create a 'config.js' file in the `Tools` folder, and copy paste the following code into 'config.js' file\n```javascript\nmodule.exports = {\n  title: 'thesis book itp 2017',        // Your website title\n  url: 'https://thesis-book-itp-2017.firebaseapp.com',          // Your website URL\n  project: 'thesis-book-itp-2017',      // Firebase ProjectPage. See README.md -\u003e How to Deploy\n  trackingID: 'xxxxxxxxxxxxx',                 // Google Analytics Site's ID\n}\n```\n\n**Step 3**. Compile and launch your app by running:\n\n```shell\n$ yarn start                    # Compiles the app and opens it in a browser with \"live reload\"\n```\n\nYou can also test your app in release (production) mode by running `yarn start -- --release` or\nwith HMR and React Hot Loader disabled by running `yarn start -- --no-hmr`. The app should become\navailable at [http://localhost:3000/](http://localhost:3000/).\n\n\n### How to Test\n\nThe unit tests are powered by [chai](http://chaijs.com/) and [mocha](http://mochajs.org/).\n\n```shell\n$ yarn lint                     # Check JavaScript and CSS code for potential issues\n$ yarn test                     # Run unit tests. Or, `yarn run test:watch`\n```\n\n\n### How to Deploy\n\nUpdate `publish` script in the [`tools/publish.js`](tools/publish.js) file with your full Firebase\nproject name as found in your [Firebase console](https://console.firebase.google.com/). Note that\nthis may have an additional identifier suffix than the shorter name you've provided. Then run: \n\n```shell\n$ yarn publish                  # Builds and deployes the app to Firebase\n```\n\nThe first time you publish, you will be prompted to authenticate with Google and generate an\nauthentication token in order for the publish script to continue.\n\n![publish](https://koistya.github.io/files/react-static-boilerplate-publish.gif)\n\nIf you need to build the project without publishing it, simply run:\n\n```shell\n$ yarn build                    # Compiles the app into the /public/dist folder\n```\n\n\n### How to publish the updated site\n\n```shell\n$ yarn build\n$ firebase serve\n$ firebase deploy\n```\n# thesisBook\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyining1023%2Fthesisbook","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyining1023%2Fthesisbook","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyining1023%2Fthesisbook/lists"}