Skip to content

sugaiketadao/sicore

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

56 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

SIcore Framework

English | Japanese

License: MIT

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.

πŸš€ Features

1. AI-Native Development

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.md enables AI to accurately understand the framework conventions

2. Simple & Lightweight & Clear

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

3. Mockup = Production Code

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

4. Type-Safe Data Processing

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

πŸ“¦ Additional Features

  • 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.

πŸ“‚ Directory Structure

[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

πŸ“– Documentation

Refer to the following documentation before starting development.

Introduction & Overview

Development Standards

Coding Rules

API References

  • JSDoc: docs/11-api-references/01-jsdoc/
  • CSSDoc: docs/11-api-references/02-cssdoc/
  • JavaDoc: docs/11-api-references/11-javadoc/

AI Prompt Guides


πŸ–₯️ How to Verify Sample Screens - VS Code

⚠️ The following steps assume an environment with VS Code and Java 11 or later installed.

1. Download Project

Download the project from GitHub.

  1. Click the "Code" button on the GitHub repository page.
  2. Select "Download ZIP".
  3. Extract the downloaded ZIP file to any folder.

2. Open Project in VS Code

  1. Launch VS Code.
  2. Select the folder where the ZIP file was extracted via "File" β†’ "Open Folder".
  3. When the VS Code "Do you trust the authors?" dialog box appears, select "Yes".

3. Start Server

  1. Select src/com/onepg/web/StandaloneServerStarter.java.
  2. Press the F5 key or select "Debug Java" from the right-click menu.
  3. Wait until the startup completion message is displayed in the console.

4. Access Sample Screens

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.

5. Sample Code

  • 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

πŸ€– Getting Started with AI Development

The development procedure using AI tools such as GitHub Copilot is as follows.

  1. Create requirements: Describe the requirements for the feature you want to create in an md file.
  2. 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.
  3. 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.

πŸ§ͺ Try It Now

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.

πŸ’¬ Contribution

Currently, this project is under development, so pull requests are not accepted. However, bug reports and opinions/requests are welcome! Please create from Issue.

πŸ’– Sponsor

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!

Sponsor


πŸ“œ License

Bundled Software

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)

About

A lightweight Java framework optimized for development with AI coding tools. Its simple design enables AI to generate highly accurate code, while keeping the architecture approachable for beginner programmers.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors