English | Japanese
The SIcore Framework is a lightweight Java framework optimized for development with AI coding tools such as GitHub Copilot.
Its simple design, which eliminates annotations and complex configurations, enables AI to generate highly accurate code and provides an architecture that is easy for programming beginners to understand.
β οΈ Note: This project is under development. Some parts are incomplete, but basic features are available for trial.
π About Translation: All English text in this project (including documentation and code comments) is translated by AI. Please understand that there may be awkward or difficult-to-understand expressions.
Designed to make it easy for AI such as GitHub Copilot to generate high-quality code while remaining accessible to programming beginners.
- Standardized Patterns: Unified implementation patterns improve AI code generation accuracy
- Token Optimization: Simple design reduces the amount of code AI needs to process
- Traceable Code: Eliminates "magic" such as annotations, making the processing flow clear
- AI Guidelines:
.github/copilot-instructions.mdenables AI to accurately understand the framework conventions
Vanilla design with minimal external dependencies results in code that is easy for both AI and humans to understand.
- Library-less: Runs on JDK standard features only (Tomcat not required)
- Annotation-less: Processing flow is easy to trace and easy for AI to infer
- JSON-centric Design: Browser β Server communication uses JSON only. HTML is treated as static files
- URL = Class Name: Intuitive without routing configuration
- URL:
/services/exmodule/ExampleListSearch - Class:
com.example.app.service.exmodule.ExampleListSearch
- URL:
HTML mockups created by web designers can be used directly as production code simply by adding name attributes.
- HTML Reuse: Mockups from the design phase become production code
- Original CSS Framework: Achieves responsive design in approximately 400 lines
No Entity/Bean required. The "Io" class, which extends Map, handles all data safely.
- Io Class: NULL-safe and type-safe data operations
- Bug Prevention: Duplicate key checks and existence checks prevent simple mistakes
- LDAP Authentication: Enables sign-in authentication that integrates with LDAP servers (such as Active Directory) with a single line in
web.properties. After authentication, maintains the authentication state statelessly using JWT tokens. - Batch Processing: Provides batch processing templates built with the same design philosophy as web applications. Receives parameters from command-line arguments and property files, and can be implemented with a unified pattern.
[project root]/
βββ docs/ # Documentation
β βββ 01-introductions/ # Overview
β βββ 02-develop-standards/ # Development standards & patterns
β βββ 03-coding-rules/ # Coding rules
β βββ 11-api-references/ # API references
β βββ 21-ai-guides/ # AI prompt guides
β βββ 31-ai-api-references/ # AI API references
βββ pages/ # Frontend (HTML/JavaScript)
β βββ app/ # Sample screens
β βββ lib/ # Framework core (JavaScript/CSS)
βββ src/ # Backend (Java)
β βββ com/example/app/ # Sample code
β βββ com/onpg/ # Framework core (Java)
βββ script/ # Batch processing sample scripts (bash)
βββ script-win/ # Batch processing sample scripts (Windows bat)
βββ ai-test-prompts/ # Test AI prompt guides
Refer to the following documentation before starting development.
- Web Page Structure Standard (HTML/JavaScript/CSS)
- Web Service Structure Standard (Java)
- Batch Processing Structure Standard (Java)
- Event Coding Patterns
- Batch Processing Coding Patterns
- JSDoc:
docs/11-api-references/01-jsdoc/ - CSSDoc:
docs/11-api-references/02-cssdoc/ - JavaDoc:
docs/11-api-references/11-javadoc/
Download the project from GitHub.
- Click the "Code" button on the GitHub repository page.
- Select "Download ZIP".
- Extract the downloaded ZIP file to any folder.
- Launch VS Code.
- Select the folder where the ZIP file was extracted via "File" β "Open Folder".
- When the VS Code "Do you trust the authors?" dialog box appears, select "Yes".
- Select
src/com/onepg/web/StandaloneServerStarter.java. - Press the
F5key or select "Debug Java" from the right-click menu. - Wait until the startup completion message is displayed in the console.
Access the following URL in your browser.
http://localhost:8000/pages/
- A list of sample screens is displayed. You can check the operation by clicking the link for each screen.
- To stop the server, run
src/com/onepg/web/StandaloneServerStopper.java.
- HTML/JavaScript:
pages/app/exmodule/ - Java:
src/com/example/app/service/exmodule/ - DB definitions/Test data:
example_db/example_data_create.sql,example_db/data/example.dbf
The development procedure using AI tools such as GitHub Copilot is as follows.
- Create requirements: Describe the requirements for the feature you want to create in an md file.
- Instruct AI: Specify the md file and instruct AI to code. AI follows
.github/copilot-instructions.md, reads the necessary documentation, and generates code according to the requirements. - Verify operation: Verify the operation of the generated code, and if there are any issues, inform AI of the content. AI identifies the cause and fixes the code.
You can experience actual AI coding using the sample requirements included in the repository. Open the project in VS Code (if you haven't already, refer to "How to Verify Sample Screens" above), and enter the following prompt in Copilot Chat.
Generate screen functionality with the requirements in
ai-test-prompts/order-prompt.md.
- AI reads the requirements definition document and automatically generates the necessary HTML, JavaScript, and Java code.
- After generation, refer to AI Prompt Guide (Debug & Fix).
β οΈ Use an AI model that strictly follows instructions. (As of December 2025, Claude Opus 4.5 is recommended)- π« Highly creative AI models may not be suitable for this task.
Currently, this project is under development, so pull requests are not accepted. However, bug reports and opinions/requests are welcome! Please create from Issue.
If you like this project, please consider supporting on GitHub Sponsors. Your support will be used to secure time for coding and documentation creation, and to maintain the development environment and AI tools.
β Just starring us is a great encouragement!
This project includes the following third-party software.
| Software | License | Description |
|---|---|---|
SQLite (sqlite3.exe) |
Public Domain | SQLite database engine |
SQLite JDBC Driver (sqlite-jdbc-3.50.2.0.jar) |
Apache License 2.0 | JDBC driver for SQLite |
SQLite is in the public domain and has no restrictions on use, modification, or redistribution.
SQLite JDBC Driver is distributed under Apache License 2.0. Refer to the licenses/ folder for the full license text.
Β© 2025 sugaiketadao (onepg.com)