{"id":22896153,"url":"https://github.com/webmaeistro/next-ornforlag_no-website","last_synced_at":"2026-05-09T07:04:40.589Z","repository":{"id":114955220,"uuid":"278949736","full_name":"webmaeistro/next-ornforlag_no-website","owner":"webmaeistro","description":"Nextjs react ecommerce site using Vipps Hurtigkasse  as payment-provider and crystallize as orders managment","archived":false,"fork":false,"pushed_at":"2021-08-19T09:16:20.000Z","size":555,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-31T23:39:44.903Z","etag":null,"topics":["free","javascript","nextjs","norsk","pusher-channels","react","sendgrid-integration","serverless","vercel","vipps-api","vipps-hurtigkasse","webhooks"],"latest_commit_sha":null,"homepage":"https://ornforlag.no","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/webmaeistro.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":"2020-07-11T22:11:46.000Z","updated_at":"2023-07-26T22:59:18.000Z","dependencies_parsed_at":null,"dependency_job_id":"691abebf-a17a-4ba4-b60d-2545796712d4","html_url":"https://github.com/webmaeistro/next-ornforlag_no-website","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/webmaeistro/next-ornforlag_no-website","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webmaeistro%2Fnext-ornforlag_no-website","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webmaeistro%2Fnext-ornforlag_no-website/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webmaeistro%2Fnext-ornforlag_no-website/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webmaeistro%2Fnext-ornforlag_no-website/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/webmaeistro","download_url":"https://codeload.github.com/webmaeistro/next-ornforlag_no-website/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webmaeistro%2Fnext-ornforlag_no-website/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32810382,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-08T08:22:46.396Z","status":"online","status_checked_at":"2026-05-09T02:00:06.633Z","response_time":123,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["free","javascript","nextjs","norsk","pusher-channels","react","sendgrid-integration","serverless","vercel","vipps-api","vipps-hurtigkasse","webhooks"],"created_at":"2024-12-13T23:33:40.559Z","updated_at":"2026-05-09T07:04:40.549Z","avatar_url":"https://github.com/webmaeistro.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ORNFORLAG.NO - NEXTJS - ECOMMERCE WEBSITE W/ Vipps Hurtigkasse (expressCheckout)PAYMENTS.\r\n\r\n### GraphQL, REACT, JAVASCRIPT, JAM-stack, HEADLESS, SERVERLESS, BACKENDLESS HOSTED ON VERCEL\r\n\r\nExtra credits and a big big shout out for all the guidence and help, haakon and\r\nstavros @ crystallize.com!\r\n\r\n## Local dev\r\n\r\nGrab the repo, extract it or \"git clone (this url).git\" and navigate to the\r\nfolder by\r\n\r\n`cd next-ornforlag_no-website`\r\n\r\nwhen in this folder, you are in the rootfolder and all commands that follow are\r\nto be executed from this rootfolder.\r\n\r\n1:\r\n\r\n```sh\r\nnpm install\r\n# or\r\nyarn\r\n```\r\n\r\n2:\r\n\r\n```sh\r\nnpm run dev\r\n# or\r\nyarn dev\r\n```\r\n\r\nThis will start up the server on http://localhost:3000 for development.\r\n\r\n## App Structure\r\n\r\n### `src/pages/`\r\n\r\nPut all your entry pages here. These are interpreted as separate routes by\r\nNext.js.\r\n\r\n### `src/pages/api/`\r\n\r\nAll your Vercel [serverless functions][18]. and Vipps API endpoints for express\r\nCheckout\r\n\r\n### `src/page-components/`\r\n\r\nWe use the `page-components/` directory to hold the actual component content\r\nrelated to entries in the `pages/` directory.\r\n\r\n### `src/components/`\r\n\r\nAll your shared React components.\r\n\r\n### `src/ui/`\r\n\r\nUI related components live here. Front end-centric\r\n\r\n### `src/lib/`\r\n\r\nEnable GraphQL and REST API communication,\r\n\r\n### `src/lib-api/`\r\n\r\nServerless API functions related: Vipps-payments or ' Vipps Hurtigkasse'\r\n(https://vipps.no/products):\r\n\r\n- createAuthKey,\r\n- fetch accessToken\r\n- generateVippsProperties,\r\n- vippsOrderId,\r\n- vippsData,\r\n- order-normalizers (prepping for data transfer betwen Vipps and PIM)\r\n\r\nPIM 3rd party orders and products mangament service(crystallize)\r\n\r\n- queries: order-by-id\r\n- createOrder mutations,\r\n- updateOrder mutations, quieries to email automation using sendgrid,\r\n  cart-validations, host-identifier,\r\n\r\n### `public/static/`\r\n\r\nPublic resources hosted as static files. icons, logo pictures, badges, svg files\r\nand mainifest etc.\r\n\r\n## Deploying The Project\r\n\r\nThere are multiple alternatives for deployments, two of them being [Vercel][20]\r\nand netlify.com PS! I recomend vercel for nextjs projects as the creators of\r\nnextjs is vercel and its hosting is optimized for nextjs.\r\n\r\n### Deploying with Vercel\r\n\r\n- Register a Vercel account\r\n- Install vercel `yarn global add vercel` or `npm i -g vercel`\r\n- Run `vercel`\r\n\r\n[0]: https://img.shields.io/badge/react-latest-44cc11.svg?style=flat-square\r\n[1]: https://github.com/facebook/react\r\n[2]: https://img.shields.io/badge/next-latest-44cc11.svg?style=flat-square\r\n[3]: https://github.com/zeit/next.js\r\n[4]:\r\n  https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square\r\n[5]: https://github.com/prettier/prettier\r\n[6]:\r\n  https://img.shields.io/badge/code_linter-eslint-463fd4.svg?style=flat-square\r\n[7]: https://github.com/prettier/prettier\r\n[18]: https://vercel.com/docs/v2/serverless-functions/introduction\r\n[19]: https://vercel.com/guides/deploying-nextjs-with-now/\r\n[20]: https://vercel.com\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwebmaeistro%2Fnext-ornforlag_no-website","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwebmaeistro%2Fnext-ornforlag_no-website","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwebmaeistro%2Fnext-ornforlag_no-website/lists"}