Cubiq
engineering.mdఅమలు

అమలు

Cubiq లోపల

క్యూబ్‌ను తిప్పే ప్రతి కదలిక వెనుక సొంత వ్యవస్థ ఉంది: గణిత నమూనా, 3D ఇంజిన్, పాఠం లక్ష్యాలను పరిగణించే పరిష్కార సాధనం. Android యాప్ Kotlin, Jetpack Composeతో రాయబడింది.

ప్రాజెక్ట్ స్నాప్‌షాట్

సోర్స్, టెక్స్ట్ వనరుల పంక్తులు
740 244
యాప్ మాడ్యూల్‌లు
39
టెస్ట్‌ల వెలుపల Kotlin భౌతిక పంక్తులు
136 019
భాషా రూపాంతరాలు
42
టెస్ట్ ప్రకటనలుtest* / androidTest* · @Test
1 624

stack.kt

ఆధునిక Android టెక్నాలజీ స్టాక్

ప్రాజెక్ట్ స్నాప్‌షాట్
Kotlin2.4.21
Compose BOM2026.09.00
Material 31.5.0-beta01
Adaptive1.3.0
Navigation 31.2.0
AGP9.4.1
KSP2.3.12
Gradle9.7.0
  • Kotlin
  • Jetpack Compose
  • Material 3
  • Adaptive
  • Navigation 3

Jetpack Compose, Material 3 ఇంటర్‌ఫేస్ అంశాలు, థీమ్‌లను నిర్వచిస్తాయి. Adaptive విండో పరిమాణం ప్రకారం అమరికను, Navigation 3 నావిగేషన్, స్క్రీన్‌ల పునరుద్ధరణను నిర్వహిస్తాయి. స్థితి Coroutines, Flow ద్వారా వస్తుంది; Hilt యాప్ మాడ్యూల్‌లను కలుపుతుంది.

architecture.kt

యాప్‌లో స్వతంత్ర పొరలు

app01Hilt / DI
feature07Compose / ViewModel
  • onboarding
  • learning
  • lesson
  • practice
  • progress
  • settings
  • events
domain07contracts / use cases
  • learning
  • lesson
  • practice
  • portability
  • progress
  • settings
  • events
data09repositories / storage
  • content
  • storage
  • learning
  • lesson
  • practice
  • portability
  • progress
  • settings
  • events
core14UI kit / cube / solver
  • common
  • model
  • designsystem
  • uikit
  • navigation
  • analytics
  • crashlytics
  • ads
  • billing
  • push
  • hardware
  • cube
  • scrambleimage
  • solver
baselineprofile01startup / frame timing

feature → domain ← data

modulesΣ 39
  • app1
  • baselineprofile1
  • core14
  • data9
  • domain7
  • feature7
Kotlin · physical LOCΣ 136 019
feature
82 86360.9%
core
21 16715.6%
data
14 34110.5%
app
9 5147.0%
domain
6 7595.0%
buildSrc
9610.7%
baselineprofile
4140.3%

ఇంటర్‌ఫేస్, డొమైన్ ఒప్పందాలు, డేటా వేర్వేరు మాడ్యూల్‌లలో ఉంటాయి; Hilt అమలులను కలుపుతుంది. Compose మార్పులేని స్థితి, స్పష్టమైన ఈవెంట్‌లను స్వీకరిస్తుంది. Room చరిత్ర, అభ్యాస పురోగతిని, DataStore సెట్టింగ్‌లను నిల్వ చేస్తాయి; Navigation 3 విభాగాల స్టాక్‌లను పునరుద్ధరిస్తుంది.

  • Coroutines / Flow
  • Hilt
  • Room
  • DataStore

android-ux.md

Android సిఫార్సుల ప్రకారం UX

Google తన Apps Experience Programలో ప్రస్తావించే విధానాలు Cubiqలో అమలయ్యాయి: Compose, అనుకూలించే అమరిక, edge-to-edge.

విండో పరిమాణం ప్రకారం
వెడల్పైన స్క్రీన్‌లో సిద్ధాంతం, సాధన పక్కపక్కన కనిపిస్తాయి. చిన్న స్క్రీన్‌లో కంటెంట్, నావిగేషన్ అందుబాటులోని స్థలానికి సరిపోతాయి; విండో పరిమాణం అమరికను నిర్ణయిస్తుంది.
నేటివ్ నావిగేషన్
Edge-to-edge సిస్టమ్ బార్‌లు, కీబోర్డ్‌ను పరిగణిస్తుంది. Navigation 3 విభాగాల స్టాక్‌లను నిలుపుతుంది, వెనక్కి వెళ్లే మార్పును ముందుగా చూపించే Predictive Backకు మద్దతిస్తుంది.
చదవడానికి సౌలభ్యం, యాక్సెసిబిలిటీ
లైట్, డార్క్ థీమ్‌లు, టెక్స్ట్ పరిమాణం మార్చడం, నావిగేషన్‌లో సెమాంటిక్ లేబుళ్లు TalkBack, కీబోర్డ్‌తో యాప్‌ను ఉపయోగించడానికి సహాయపడతాయి. ఫాంట్ పెద్దగా ఉన్నా విభాగాల పేర్లు స్క్రీన్ రీడర్‌కు అందుబాటులో ఉంటాయి.
Google సిఫార్సులు · Apps Experience Program
OpenGL ES 3.0

engine.glsl

గణితాన్ని అనుసరించే జ్యామితి

moving cubies
26
facelets
54
meshes
8
triangles
2 964

GLSL షేడర్‌లు PBR మెటీరియల్‌లు, గరుకుదనం, పరిసరాల వెలుతురును గణిస్తాయి. నమూనా, యానిమేషన్ సమన్వయంలో ఉంటాయి: ఒక అడుగు వెనక్కి వెళ్తే విలోమ కదలిక వర్తిస్తుంది; కెమెరా ప్యానెల్‌ల మధ్య ఖాళీని పరిగణిస్తుంది.

  • OpenGL ES 3.0
  • GLSL
  • PBR
  • Instancing

క్యూబ్ స్థితి / ఫార్ములా ప్లేబ్యాక్

టైప్ ఉన్న నోటేషన్ కదలికలు, సమన్వయ క్యూబ్ స్థితులుగా మారుతుంది. రెండరర్ క్యూ పొరల తిప్పుడును యానిమేట్ చేసి, భాగాలు, ఫేస్‌లెట్‌ల గుర్తింపును నిలుపుతుంది. ఫార్ములా నిజమైన కదలికల క్రమంగా ప్లే అవుతుంది; ప్లే, పాజ్, వేగం నియంత్రణ ఉంటాయి.

  1. Notation
  2. Cube state
  3. Move queue
  4. OpenGL ES 3.0

ముందు అడుగు కొత్త కదలికను యానిమేట్ చేస్తుంది; వెనుక అడుగు విలోమ కదలికను వర్తింపజేస్తుంది. స్థానానికి వెళ్లడం ప్రాథమిక దృశ్యం, లక్ష్య క్రమాన్ని పునరుద్ధరిస్తుంది. రద్దు తదుపరి కదలికలను పంపడాన్ని ఆపుతుంది; మొదలైన తిప్పుడు పూర్తవుతుంది. EGL జీవితచక్రం pause/releaseను నిర్వహిస్తుంది; GL లేకున్నా 3D లేకుండా అభ్యాస మార్గం అందుబాటులో ఉంటుంది.

solver.kt

పాఠం లక్ష్యాలకు తగిన పరిష్కారం

  • BFS
  • Beam search
  • F2L

సొంత పరిష్కార సాధనం ప్రస్తుత పాఠం ఫార్ములాలు, సహాయక కదలికలతో పరిష్కారం నిర్మిస్తుంది. SolverRequestలో క్యూబ్ స్థితి, లక్ష్య భాగాలు, లాక్ చేసిన లక్ష్యాలు, అనుమతించిన ఫార్ములాలు, పరిస్థితులు, దిశ ఉంటాయి. ప్లానర్ అభ్యాస లక్ష్యాల క్రమాన్ని పాటించి అమర్చిన భాగాలను కాపాడుతుంది.

దశ ఆధారిత ప్రణాళిక పరిమిత BFS, బీమ్ సెర్చ్, F2L పరిస్థితుల గుర్తింపును ఉపయోగిస్తుంది. ధృవీకరణ భాగాల కూర్పు, ఫ్లిప్‌లు, ట్విస్ట్‌లు, పర్మ్యుటేషన్ పారిటీని తనిఖీ చేస్తుంది. శోధన విధానం లోతు, బీమ్ వెడల్పును పరిమితం చేస్తుంది. పాఠం మారితే శోధన రద్దవుతుంది, పాత ఫలితం నిరోధించబడుతుంది.

ఫలితం PracticePlan: అడుగులు, ఫార్ములా సూచనలు, డిస్‌ప్లే టైమ్‌లైన్, ఎగ్జిక్యూషన్ టైమ్‌లైన్. వివరణ పాఠం దిశను నిలుపుతుంది; ఇంజిన్ పూర్తి అమలు క్రమాన్ని పొందుతుంది. ఫలితాలు: plan / solved / invalid input / no constrained path.

  1. క్యూబ్ స్థితి
  2. నమూనా ధృవీకరణ
  3. అభ్యాస ప్రణాళిక
  4. 3D సాధన

content.md

కంటెంట్ బిల్డ్ ప్రక్రియలో తనిఖీ అవుతుంది

సిద్ధాంతం 756 Markdown పత్రాల్లో ఉంటుంది; సాధన 336 స్థానికీకరించిన దృశ్యాలలో నిర్వచించబడింది. Gradle అనువాదాల నిర్మాణాన్ని, 316 సొంత చిత్రాల సూచనలను ధృవీకరిస్తుంది. గ్రాఫిక్స్ Blender/Cyclesలో సిద్ధం చేశారు; Android ఇంజిన్ వేరే ప్రక్రియాత్మక జ్యామితిని ఉపయోగిస్తుంది.

workflow.md

కోడ్‌గా పత్రాలు / ఏజెంట్ వర్క్‌ఫ్లో

AGENTS.md
48
README.md
16

రిపాజిటరీ ఏజెంట్‌లతో అభివృద్ధికి అమర్చబడింది: AGENTS.md శ్రేణి బాధ్యతలు, నిర్మాణ పరిమితులు, ధృవీకరణ గేట్‌లను నిర్వచిస్తుంది; README.md మాడ్యూల్ ఒప్పందాలను, KDoc API, మారని షరతులను వివరిస్తాయి.

నిర్మాణం, డిజైన్, స్థానికీకరణ ఒప్పందాలు కోడ్‌తో పాటు వెర్షన్ కంట్రోల్‌లో ఉంటాయి. PLAN.md పరిధి, పని అప్పగింతను నమోదు చేస్తుంది; ఒప్పందాలు మారితే బాధ్యతగల పత్రాలు కూడా నవీకరించబడతాయి. తనిఖీలు, జనరేషన్ Gradle ద్వారా జరుగుతాయి; CI రెండు స్టోర్ రూపాంతరాలను బిల్డ్ చేస్తుంది.

physical text linesΣ 740 244
Resources / localization
399 56854.0%
Kotlin · non-test
136 01918.4%
Lesson Markdown
132 64217.9%
Kotlin · JVM tests
46 6456.3%
Kotlin · Android tests
13 6361.8%
Build tooling / web
8 9851.2%
Documentation
2 7490.4%
నాణ్యత, లెక్కింపు విధానం

టెస్ట్‌లు అసాధ్యమైన క్యూబ్ స్థితులు, అమర్చిన పొరలను కాపాడటం, అభ్యాస ప్రణాళికలు, పాత అభ్యర్థనలను రద్దు చేయటం, సెషన్‌ల పునరుద్ధరణ, డేటా దిగుమతిని కవర్ చేస్తాయి. CI రెండు స్టోర్ రూపాంతరాలను బిల్డ్ చేస్తుంది; విడుదల తనిఖీల్లో R8, APK/AAB, చెక్‌సమ్‌లు, 16 KB పేజీల కోసం నేటివ్ లైబ్రరీల అలైన్‌మెంట్ ఉంటాయి.

Kotlin పరిమాణాన్ని భౌతిక పంక్తుల్లో లెక్కించారు; వ్యాఖ్యలు, ఖాళీ పంక్తులు, buildSrc, బెంచ్‌మార్క్ కోడ్ చేర్చి టెస్ట్ డైరెక్టరీలను మినహాయించారు. టెస్ట్ సంఖ్య అంటే 1 343 JVM ప్రకటనలు, 281 Android ప్రకటనలు; నడిపిన సార్ల సంఖ్య కాదు. పత్రాల్లో ప్రత్యామ్నాయ పాఠ్యం ఉంటుంది; దృశ్యం ఉండటం ప్రతి పాఠంలో సాధన ఉందని అర్థం కాదు.

baselineprofile · @Test
3

మొత్తం టెక్స్ట్, ట్రాక్ చేసే UTF-8 సోర్స్, టెస్ట్‌లు, XML/JSON వనరులు, Markdown కంటెంట్, స్థానికీకరణ, పత్రాలు, బిల్డ్ టూల్స్, వెబ్ సోర్స్‌లో భౌతిక పంక్తులను లెక్కిస్తుంది. వ్యాఖ్యలు, ఖాళీ పంక్తులు, భాషల కాపీలు ఉంటాయి. మీడియా, జనరేటెడ్/బిల్డ్ అవుట్‌పుట్, వెండర్ కోడ్, సర్వీస్ కాన్ఫిగరేషన్, తాత్కాలిక PLAN.md మినహాయించబడతాయి. ఇది ప్రాజెక్ట్ టెక్స్ట్ ఇన్‌పుట్ పరిమాణం; అమలు చేయగల LOC కాదు.

Cubiq గురించి తెలుసుకోండి