{"id":27902841,"url":"https://github.com/ajaymahadeven/storyarch","last_synced_at":"2025-10-14T12:53:16.155Z","repository":{"id":158154872,"uuid":"616471206","full_name":"ajaymahadeven/StoryArch","owner":"ajaymahadeven","description":"To develop a non-web-based software application in Java to support individual and collaborative plot development for stories. ","archived":false,"fork":false,"pushed_at":"2023-12-08T11:49:15.000Z","size":1050,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-31T00:05:29.413Z","etag":null,"topics":["back-end","client-server-architecture","git","intellij","junit5","learn","mvc-architecture","writing-application"],"latest_commit_sha":null,"homepage":"","language":"Java","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/ajaymahadeven.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":"2023-03-20T13:04:43.000Z","updated_at":"2024-09-10T10:39:57.000Z","dependencies_parsed_at":"2024-11-17T15:59:57.406Z","dependency_job_id":null,"html_url":"https://github.com/ajaymahadeven/StoryArch","commit_stats":null,"previous_names":["thenameisajay/project---storyarch","thenameisajay/storyarch","ajaymahadeven/storyarch"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ajaymahadeven%2FStoryArch","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ajaymahadeven%2FStoryArch/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ajaymahadeven%2FStoryArch/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ajaymahadeven%2FStoryArch/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ajaymahadeven","download_url":"https://codeload.github.com/ajaymahadeven/StoryArch/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252582707,"owners_count":21771706,"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":["back-end","client-server-architecture","git","intellij","junit5","learn","mvc-architecture","writing-application"],"created_at":"2025-05-05T21:48:11.816Z","updated_at":"2025-10-14T12:53:11.135Z","avatar_url":"https://github.com/ajaymahadeven.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# StoryArch -  Plot development Application for writers\n--\n\n## DESCRIPTION\n\n\u003cp\u003e \nStoryArch is a creative tool aimed at helping writers build their narratives more efficiently. It streamlines the process of structuring a story, enabling users to outline their plots, build characters, and track story progress effortlessly.\nThe idea was to develop a non-web-based software application in Java to support individual and collaborative plot development for stories. The application is expected to be deployed on laptops and desktops.\n\u003c/p\u003e\n\n\n\n### Technologies Used\n\n* Java 17\n* Intelli - J Ultimate\n* Git\n* JUnit 5\n\n---\n\n### FILE STRUCTURE :\n\n\u003col\u003e\n\u003cli\u003e Terminal folder - Terminal View\u003c/li\u003e\n\u003cli\u003e src - \u003cstrong\u003e Back end development folder \u003c/strong\u003e\n\u003c/ol\u003e\n\n## SETUP AND INSTALLATION\n\n\u003cstrong\u003e Terminal Usage or IDE Based\u003c/strong\u003e\n\u003cstrong\u003e For Backend : \u003c/strong\u003e\n\u003col\u003e\n\u003cli\u003e Compile all files using javac *.java or open using an IDE (Preferably Intelli-J)\u003c/li\u003e\n\u003cli\u003e Run the MainApp.java file using java MainApp\u003c/li\u003e\n\u003cli\u003e To access the Projects, Storyboard or chapter -\u003e a random ID is assigned, this can be viewed using (the View option).\u003c/li\u003e\n\u003cbr/\u003e\n\u003c/ol\u003e\n\n---\n\n## FUNCTIONALITIES :\n\n\u003col\u003e\n\u003cli\u003e Users must register with the application before they can use it;\u003c/li\u003e \n\u003cli\u003e Each story has a project associated with it; \u003c/li\u003e\n\u003cli\u003e A story plot can be developed by an individual or a team of writers\u003c/li\u003e \n\u003cli\u003e The free version of the application supports individual writers, with each allowed a maximum of 10 projects\u003c/li\u003e\n\u003cli\u003e The paid version (via annual subscription) adds support for teams and unlimited projects;\u003c/li\u003e\n\u003cli\u003e The application should allow users of the free version to upgrade to the paid version at any time;\u003c/li\u003e\n\u003cli\u003e The paid version should remind users of upcoming subscription deadlines and allow them to renew using an external payment service;\u003c/li\u003e\n\u003cli\u003e When there is a team of writers, the story has a chief writer who sets up a project in the application for that item and invites the rest of the team to join;\u003c/li\u003e\n\u003cli\u003e The application should provide graphical and textual interfaces for plot development;\u003c/li\u003e\n\u003cli\u003e Plots do not have to be developed in a linear fashion;\u003c/li\u003e\n\u003cli\u003e When there is a team of writers, each writer can work on a different part of the plot simultaneously;\u003c/li\u003e\n\u003cli\u003e The application should maintain versions of the plot based on commits by writers;\u003c/li\u003e\n\u003cli\u003e It should be possible for writers to work in ‘offline’ mode when they are not connected to the network;\u003c/li\u003e\n\u003cli\u003e The application should allow writers to visualise the story in chronological or chapter order;\u003c/li\u003e\n\u003cli\u003e Writers should have the option of making use of and paying for external illustration services;\u003c/li\u003e\n\u003cli\u003e The application should generate chapter outlines as text files to be used with other word processing applications;\u003c/li\u003e\n\u003cli\u003e Writers should be able to submit plots to publishers (who are external to the system) via existing APIs.\u003c/li\u003e\n\u003c/ol\u003e\n\n---\n\n### No of Test Cases: 93\n\nClasses Tested:\n\u003col\u003e\n           \u003cli\u003e Model Layer: 5 \u003c/li\u003e\n            \u003cli\u003e Service Layer: 5 \u003c/li\u003e\n\u003c/ol\u003e\n\n### Test Coverage : \n\u003cimg width=\"525\" alt=\"Screenshot 2023-04-23 at 1 15 27 PM\" src=\"https://user-images.githubusercontent.com/113372062/233839300-f82341b2-4f1e-44b3-9fca-2ca2fde3ab2a.png\"\u003e\n\n\n\n\n\n\n### CONTRIBUTION GUIDELINES :\n\n- Clone the repository from GitHub server.\n- Create a new branch for your feature or bug fix.\n- Write unit tests for your code.\n- Implement your feature or bug fix.\n- Ensure all tests pass.\n- Commit your changes and push to your branch on the GitHub server.\n- Submit a merge request to merge your changes into the main branch.\n\n--- \n\n### License\n\nThis project is done part of coursework of \u003cstrong\u003e CS5033 - Software Architecture\u003c/strong\u003e of the \u003cstrong\u003e\nComputer Science Dept of University of St.Andrews.\u003c/strong\u003e \u003c/br\u003e\n\nThis project is licensed under the \u003ccode\u003e MIT License. \u003c/code\u003eSee the \u003ccode\u003eLICENSE\u003c/code\u003e file for more information.\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fajaymahadeven%2Fstoryarch","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fajaymahadeven%2Fstoryarch","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fajaymahadeven%2Fstoryarch/lists"}