{"id":15105196,"url":"https://github.com/prajun7/library","last_synced_at":"2026-01-19T03:33:40.893Z","repository":{"id":154011744,"uuid":"625370489","full_name":"prajun7/library","owner":"prajun7","description":"Library to keep track of the books. Built by using Ember and Spring Boot","archived":false,"fork":false,"pushed_at":"2023-05-06T17:12:37.000Z","size":51953,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-10T23:55:11.461Z","etag":null,"topics":["emberjs","java","javascript","spring-boot"],"latest_commit_sha":null,"homepage":"https://prajun7.github.io/library/","language":"JavaScript","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/prajun7.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":"2023-04-08T22:43:23.000Z","updated_at":"2023-04-23T01:49:11.000Z","dependencies_parsed_at":null,"dependency_job_id":"d1ab305d-b3d6-49d9-8780-6b893887fcbd","html_url":"https://github.com/prajun7/library","commit_stats":{"total_commits":56,"total_committers":1,"mean_commits":56.0,"dds":0.0,"last_synced_commit":"79faa1e5a22f0d297c73d958c10a9f085955b57b"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prajun7%2Flibrary","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prajun7%2Flibrary/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prajun7%2Flibrary/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prajun7%2Flibrary/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/prajun7","download_url":"https://codeload.github.com/prajun7/library/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247339136,"owners_count":20923009,"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":["emberjs","java","javascript","spring-boot"],"created_at":"2024-09-25T20:21:48.006Z","updated_at":"2026-01-19T03:33:40.886Z","avatar_url":"https://github.com/prajun7.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# library\nApp to keep track of Books in the library.\u003cbr\u003e\nBuilt by using Spring Boot and Ember.js\u003cbr\u003e\nCheck here:\u003cbr\u003e\nhttps://prajun7.github.io/library/\n\n### To Start\n- Clone the project\n- For Frontend (VS code)\n```sh\nnpm install\nember s\n```\n- For backend (IntelliJ)\n```sh\nBuild the project using Maven\n```\n\n### Backend\n - Spring Boot\n - JPA\n - H2\n \n ### Frontend\n  - Ember.js\n\n### Deployment\n#### Frontend - Using github pages\n In config/environment.js file, the rootURL should be the repository-name in our case library.\n ```sh\nmodule.exports = function(environment) {\n  var ENV = {\n    // ... other configurations ...\n\n    // Update rootURL and locationType for GitHub Pages deployment\n    rootURL: '/\u003crepository-name\u003e/', // Replace \u003crepository-name\u003e with your GitHub repository name\n    locationType: 'hash'\n  };\n\n  // ... other configurations ...\n\n  return ENV;\n};\n\n ```\n \n And need to add these options into `ember-cli-build.js` file:\n ```sh\n     // Configure outputPaths\n  app.options.outputPaths = {\n    app: {\n      html: 'index.html',\n      css: '/assets/app.css',\n      js: '/assets/app.js'\n    },\n    vendor: {\n      css: '/assets/vendor.css',\n      js: '/assets/vendor.js'\n    }\n  };\n ```\n \n Check the config/environment.js file and ember-cli-build.js file in the main branch.\n\n\u003e Ember is deployed using the guthub pages. Check the branch `gh-pages-frontend`.\u003cbr\u003e\n\u003e To deploy a new project follow these steps: \u003cbr\u003e\n\u003e Run `ember build --environment=production` in the main branch \u003cbr\u003e\n\u003e This will generate the dist folder in the main branch.\u003cbr\u003e\n\u003e Copy the contents of the dist folder like, assets folder, index.html to the `gh-pages-frontend` branch.\u003cbr\u003e\n\u003e The assest, index.html and robots.txt should be the root file of that branch, that is they should not be inside any folder.\u003cbr\u003e\n\n### Backend - Using Heroku\nWe need to add system.properties file in the backend and need to specifiy the java version we are using.\nThat is,\n```\njava.runtime.version=17\n```\nCheck pom.xml file to see which Java versin you are using.\n\n\u003e Check the heroku-backend branch\u003cbr\u003e\n\u003e Only this branch is deployed for backend.\n\n---\n\n### Ember 101\n- index.js in routes folder\n- index.js in controller folder\n- index.hbs in template folder\n\nAll of these files are connected.\nThe name of the files should be same.\n\nIn index.js in route folder: It acts like useEffect with empty array. \nIn this file we put the API call to the backend inside the model.\nAnd we return the data from the model.\nThe route file is the singleton, that is, it only have one instance and only runs once when we go to that URL.\n\nAfter this in, index.hbs file we can get that data by doing,\nthis.model\n\nIf we want to have more methods in index.hbs method we will define with action or method into the index.js in controller folder.\n\nWhen we call a component and pass the function or variable inside the component we can get that in the component by using, this.args.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprajun7%2Flibrary","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprajun7%2Flibrary","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprajun7%2Flibrary/lists"}