{"id":23307280,"url":"https://github.com/simonapiz/codestrips","last_synced_at":"2026-05-03T10:37:18.245Z","repository":{"id":205271772,"uuid":"713810806","full_name":"SimonaPiz/Codestrips","owner":"SimonaPiz","description":"Build an API for Codestrips, a small application to allow users to create and save small one-pane comic strips.","archived":false,"fork":false,"pushed_at":"2023-11-03T16:18:57.000Z","size":118,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-07T00:48:26.083Z","etag":null,"topics":["api","back-end","codecademy-solutions","database","express","javascript","sqlite3"],"latest_commit_sha":null,"homepage":"","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/SimonaPiz.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-11-03T09:32:43.000Z","updated_at":"2023-11-03T10:43:10.000Z","dependencies_parsed_at":null,"dependency_job_id":"f673f81f-43bc-4790-9480-27180a9c47ec","html_url":"https://github.com/SimonaPiz/Codestrips","commit_stats":null,"previous_names":["simonapiz/codestrips"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/SimonaPiz/Codestrips","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimonaPiz%2FCodestrips","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimonaPiz%2FCodestrips/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimonaPiz%2FCodestrips/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimonaPiz%2FCodestrips/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SimonaPiz","download_url":"https://codeload.github.com/SimonaPiz/Codestrips/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimonaPiz%2FCodestrips/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268240295,"owners_count":24218355,"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","status":"online","status_checked_at":"2025-08-01T02:00:08.611Z","response_time":67,"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":["api","back-end","codecademy-solutions","database","express","javascript","sqlite3"],"created_at":"2024-12-20T12:29:41.973Z","updated_at":"2025-10-17T11:03:37.529Z","avatar_url":"https://github.com/SimonaPiz.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🗨 Codestrips\n\u003e CREATE A BACK-END APP WITH JAVASCRIPT\n\nBuild an API for a small application to allow users to create and save small one-pane comic strips.\n\n\u003cimg src=\"https://github.com/SimonaPiz/Codestrips/blob/76ae58d8d268cc0f08703c7ee69c2dd532b93af9/example.jpg\" width=\"600px\" alt=\"preview\" title=\"preview\"/\u003e\n\n## Table of Contents\n* [Project Overview](#project-overview)\n* [Implementation Details](#implementation-details)\n* [Testing](#testing)\n* [Technologies Used](#technologies-used)\n* [Usage](#usage)\n* [Acknowledgements](#acknowledgements)\n* [Author](#author)\n\n\n## Project Overview\n\nBuild an API for Codestrips, a small application to allow users to create and save small one-pane comic strips. \n- Users can select a head, body, background location, thought/speech bubble type, thought/speech bubble text, and caption for a strip.\n\nThe API allows to save these to a SQLite database and retrieve them so that they persist even when users restart the server.\n\n## Implementation Details\n\n- [x] Setting up Express Router\n\n  ✔ [#2 issue](https://github.com/SimonaPiz/Codestrips/issues/2)\n\n- [x] Creating the database using `sqlite3`\n\n  ✔ [#3 issue](https://github.com/SimonaPiz/Codestrips/issues/3)\n\n- [x] Implement GET '/strips' Route to get all strips\n  - Import SQLite database\n  - Add a new route to your application, it should monitor the `/strips` endpoint for GET requests.\n  - Send back the array of all strips in the `db.all()`callback. \n\n  ✔ [#5 issue](https://github.com/SimonaPiz/Codestrips/issues/5)\n\n- [x] Implement POST request for '/strips' route to create new Strip\n\n  - Add a new route to your application, it should monitor the `/strips` endpoint for POST requests.\n  - When a POST /strips request arrives, the application should validate the strip and send a 400 response if it is invalid.\n  - Your POST /strips route should `INSERT` a new strip into the database.\n  - If an error occurs, send back a 500 response status.\n  - Set a 201 status code and the send the created strip inside the callback of your `db.get()`. Create an object to send in the response and set its `strip` property equal to the strip returned from the database. Send this object in the response.\n\n  ✔ [#6 issue](https://github.com/SimonaPiz/Codestrips/issues/6)\n\n## Testing\n\nA testing suite has been provided, checking for all essential functionality and edge cases.\n\nTo run these tests run \n```\n$ npm test\n```\n\n✔ All Tests passed\n\n![test results](https://user-images.githubusercontent.com/91121660/280332217-9f4460b3-22b0-4a07-a2ec-e0aae507af38.png)\n\n## Usage\n\nYou can start the server from the terminal window with \n```\n$ node app.js\n```\nand stop it with the Ctrl + C key command.\n\n## Technologies Used\n\nI use Express, SQLite, and the sqlite3 node module in order to create a Strip table and then set up a POST route for creating new strips and a GET route to retrieve all strips from the database.\n\n  - express 4\n  - sqlite3 5\n  - body-parser 1\n  - mocha 10\n  - chai 4\n\n  ## Acknowledgements\n\nThis project comes from the [Codecademy's Create a Back-End with JavaScript](https://www.codecademy.com/learn/paths/create-a-back-end-app-with-javascript) course.\n\n## Author\n\n- [Simona Pizio](https://github.com/SimonaPiz)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimonapiz%2Fcodestrips","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsimonapiz%2Fcodestrips","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimonapiz%2Fcodestrips/lists"}