கட்டமைப்பு
அமைப்பின் கண்ணோட்டம்
iOS app / agent client -> api.<domain> -> API Gateway -> Lambda backend -> Postgres
Web app -> app.<domain> -> CloudFront -> SPA
Browser and agent auth -> auth.<domain> -> API Gateway -> Auth Lambda -> Cognito
Apex fallback -> <domain> -> CloudFront redirect -> app.<domain>
கொள்கைகள்
app,api,authஆகியவற்றுக்குத் தனித்தனி பொது டொமைன்கள்- Postgres தான் அதிகாரப்பூர்வத் தரவு மூலம்
- iOS கிளையண்ட் உள்ளூர் SQLite உடனும் ஒத்திசைவுடனும் இணையம் இல்லாமல் இயங்குவதை முதன்மையாகக் கொண்டது
- வலைச் செயலி, iOS செயலி, வெளிப்புற முகவர் இடைமுகம் ஆகியவை ஒரே பணியிட மாதிரியைப் பகிர்கின்றன
- வெளிப்புற முகவர்கள்
GET https://api.nibomo.com/v1/இலிருந்து தொடங்குகின்றன
ஆதரிக்கப்படும் கிளையண்டுகள்
app.nibomo.comஇல் வலைச் செயலி- உள்ளூர் SQLite சேமிப்பகத்துடன் முதன்மைக் களஞ்சியத்தில் உள்ள iOS செயலி
- Google Play இல் Android செயலி
- கண்டறிதல், OTP தொடக்க அமைப்பு,
Authorization: ApiKeyவழியாக வெளிப்புற முகவர் கிளையண்டுகள்
தரவு மாதிரி
workspacesworkspace_membersuser_settingsdevicescardsdecksreview_eventsapplied_operationssync_state
தரவு ஓட்டம்
வலை
- உலாவி
auth.<domain>வழியாக உள்நுழைகிறது. - வலைச் செயலி
api.<domain>இலிருந்து பணியிடத் தரவை ஏற்றுகிறது. - AI அரட்டைக் கோரிக்கைகள்
/chat/local-turnவழியாகச் செல்கின்றன. - மீள்பயிற்சிச் சமர்ப்பிப்புகள் எழுதும்போதே திட்டமிடுபொறி நிலையைப் புதுப்பிக்கின்றன.
iOS
- iOS செயலி முதலில் உள்ளூரில் SQLite இல் எழுதுகிறது.
- உள்ளூர் மாற்றங்கள் ஒரு வெளிச்செல்லும் வரிசையில் (outbox) சேர்க்கப்படுகின்றன.
- ஒத்திசைவு
/v1/workspaces/{workspaceId}/sync/pushவழியாக மாற்றங்களைப் பதிவேற்றுகிறது. - ஒத்திசைவு
/v1/workspaces/{workspaceId}/sync/pullவழியாகத் தொலைநிலைப் புதுப்பிப்புகளைப் பதிவிறக்குகிறது. - உள்ளூர் தரவுத்தளம் மாற்றங்களைப் பயன்படுத்தி, ஒத்திசைவுச் சுட்டியை முன்னகர்த்துகிறது.
வெளிப்புற முகவர்கள்
- முகவர்கள்
GET /v1/உடன் தொடங்குகின்றன. - OTP தொடக்க அமைப்பு
auth.<domain>இல் இயங்குகிறது. - முகவர் நீண்ட காலம் செல்லுபடியாகும் API விசையைப் பெறுகிறது.
- முகவர்
/v1/agent/meஐ ஏற்றி, பணியிடங்களைப் பட்டியலிட்டு, தேவைப்பட்டால் ஒன்றைத் தேர்ந்தெடுத்து, பின்னர்/v1/agent/sql/query,/v1/agent/sql/executeஆகியவற்றைப் பயன்படுத்துகிறது.
திட்டமிடல்
Nibomo மீள்பயிற்சித் திட்டமிடுபொறியாக FSRS ஐப் பயன்படுத்துகிறது.
செயலாக்கக் குறிப்புகள்:
- பின்தளமும் iOS உம் ஒன்றையொன்று பிரதிபலிக்கும் FSRS செயலாக்கங்களைப் பராமரிக்கின்றன
- வலைச் செயலி திட்டமிடல் தரவு ஒப்பந்தத்தைப் பிரதிபலிக்கிறது, ஆனால் மூன்றாவது திட்டமிடுபொறி நகலைக் கொண்டிருக்கவில்லை
- பணியிட அளவிலான திட்டமிடுபொறி அமைப்புகளில் விரும்பிய நினைவுத் தக்கவைப்பு, கற்றல் படிகள், மீள்கற்றல் படிகள், அதிகபட்ச இடைவெளி, fuzz ஆகியவை அடங்கும்
- உண்மையான மீள்பயிற்சி நேரமுத்திரை
reviewedAtClientஇலிருந்து வருகிறது
விரிவான ஒப்பந்தத்துக்கு, முதன்மைக் களஞ்சியத்தில் உள்ள FSRS திட்டமிடல் தர்க்கம் ஐப் பாருங்கள்.
அங்கீகாரம்
- Cognito வழியாக மின்னஞ்சல் OTP
- தளத்தில் இயங்கும் வலைச் செயலிக்கு, பகிரப்பட்ட டொமைன் உலாவி அமர்வுக் குக்கீகள்
auth.<domain>இல் முகவர் OTP தொடக்க அமைப்பு, நீண்ட காலம் செல்லுபடியாகும் ApiKey வெளியீட்டுடன்- உள்ளூர் மேம்பாட்டுக்கு
AUTH_MODE=none - உற்பத்திச் சூழலைப் போன்ற அங்கீகாரத்துக்கு
AUTH_MODE=cognito
பயன்படுத்தல் வடிவம்
app.<domain>-> CloudFront + S3api.<domain>-> API Gateway + Lambda பின்தளம்auth.<domain>-> API Gateway + Lambda அங்கீகாரச் சேவை- AWS RDS இல் Postgres
மூல (apex) டொமைன் தனியான சந்தைப்படுத்தல் தளத்திலேயே இருக்கலாம். தொடக்க அமைப்பின்போது அது வேறு எதற்கும் பயன்படுத்தப்படாமல் இருந்தால், உள்கட்டமைப்பு அதைத் தற்காலிகமாக app.<domain> க்குத் திருப்பிவிடலாம்.