devintelligence 0.0.0-stage → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/.env.example +14 -0
  2. package/LICENSE +22 -0
  3. package/README.md +146 -3
  4. package/bin/devintelligence.js +2486 -0
  5. package/bin/devintelligence.ts +416 -0
  6. package/dist/App.d.ts +3 -0
  7. package/dist/ai.js +366 -0
  8. package/dist/ai.js.map +7 -0
  9. package/dist/components/DeepAnalysisViews.d.ts +13 -0
  10. package/dist/components/MobileAndPlatformViews.d.ts +22 -0
  11. package/dist/components/OverviewAndExplorerViews.d.ts +20 -0
  12. package/dist/components/RepairAndGateViews.d.ts +25 -0
  13. package/dist/engine/aiEngine.d.ts +62 -0
  14. package/dist/engine/analyzerEngine.d.ts +19 -0
  15. package/dist/engine/repairEngine.d.ts +42 -0
  16. package/dist/engine.js +1541 -0
  17. package/dist/engine.js.map +7 -0
  18. package/dist/index.d.ts +10 -0
  19. package/dist/index.js +2344 -0
  20. package/dist/index.js.map +7 -0
  21. package/dist/main.d.ts +1 -0
  22. package/dist/repair.js +2052 -0
  23. package/dist/repair.js.map +7 -0
  24. package/dist/src/App.d.ts +3 -0
  25. package/dist/src/components/DeepAnalysisViews.d.ts +13 -0
  26. package/dist/src/components/MobileAndPlatformViews.d.ts +22 -0
  27. package/dist/src/components/OverviewAndExplorerViews.d.ts +20 -0
  28. package/dist/src/components/RepairAndGateViews.d.ts +25 -0
  29. package/dist/src/engine/aiEngine.d.ts +62 -0
  30. package/dist/src/engine/analyzerEngine.d.ts +19 -0
  31. package/dist/src/engine/repairEngine.d.ts +42 -0
  32. package/dist/src/index.d.ts +10 -0
  33. package/dist/src/main.d.ts +1 -0
  34. package/dist/src/types/devintelligence.d.ts +250 -0
  35. package/dist/types/devintelligence.d.ts +250 -0
  36. package/fixtures/django-analytics-service/requirements.txt +4 -0
  37. package/fixtures/django-analytics-service/settings.py +16 -0
  38. package/fixtures/express-api-gateway/package.json +14 -0
  39. package/fixtures/express-api-gateway/src/server.ts +16 -0
  40. package/fixtures/nextjs-saas-portal/package.json +21 -0
  41. package/fixtures/nextjs-saas-portal/src/app/dashboard/page.tsx +26 -0
  42. package/fixtures/rn-bare-fitness/android/build.gradle +19 -0
  43. package/fixtures/rn-bare-fitness/ios/Info.plist +14 -0
  44. package/fixtures/rn-bare-fitness/package.json +23 -0
  45. package/fixtures/rn-bare-fitness/src/WorkoutTracker.tsx +31 -0
  46. package/fixtures/rn-expo-commerce/android/app/build.gradle +20 -0
  47. package/fixtures/rn-expo-commerce/android/app/src/main/AndroidManifest.xml +21 -0
  48. package/fixtures/rn-expo-commerce/android/gradle.properties +6 -0
  49. package/fixtures/rn-expo-commerce/app.json +17 -0
  50. package/fixtures/rn-expo-commerce/babel.config.js +10 -0
  51. package/fixtures/rn-expo-commerce/ios/Podfile +13 -0
  52. package/fixtures/rn-expo-commerce/metro.config.js +7 -0
  53. package/fixtures/rn-expo-commerce/package.json +31 -0
  54. package/fixtures/rn-expo-commerce/src/components/LegacyPromoBanner.tsx +11 -0
  55. package/fixtures/rn-expo-commerce/src/screens/ProductFeedScreen.tsx +48 -0
  56. package/fixtures/rn-expo-commerce/src/services/api.ts +15 -0
  57. package/package.json +89 -6
@@ -0,0 +1,20 @@
1
+ android {
2
+ namespace "com.devintel.expocommerce"
3
+ compileSdkVersion 33
4
+
5
+ defaultConfig {
6
+ applicationId "com.devintel.expocommerce"
7
+ minSdkVersion 21
8
+ targetSdkVersion 31
9
+ versionCode 14
10
+ versionName "1.4.0"
11
+ }
12
+
13
+ buildTypes {
14
+ release {
15
+ minifyEnabled false
16
+ shrinkResources false
17
+ signingConfig signingConfigs.debug
18
+ }
19
+ }
20
+ }
@@ -0,0 +1,21 @@
1
+ <manifest xmlns:android="http://schemas.android.com/apk/res/android"
2
+ package="com.devintel.expocommerce">
3
+
4
+ <application
5
+ android:name=".MainApplication"
6
+ android:label="@string/app_name"
7
+ android:allowBackup="true"
8
+ android:usesCleartextTraffic="true"
9
+ android:theme="@style/AppTheme">
10
+ <activity
11
+ android:name=".MainActivity"
12
+ android:configChanges="keyboard|keyboardHidden|orientation|screenSize|uiMode"
13
+ android:launchMode="singleTask"
14
+ android:windowSoftInputMode="adjustResize">
15
+ <intent-filter>
16
+ <action android:name="android.intent.action.MAIN" />
17
+ <category android:name="android.intent.category.LAUNCHER" />
18
+ </intent-filter>
19
+ </activity>
20
+ </application>
21
+ </manifest>
@@ -0,0 +1,6 @@
1
+ org.gradle.jvmargs=-Xmx1024m -XX:MaxMetaspaceSize=256m
2
+ android.useAndroidX=true
3
+ android.enableJetifier=true
4
+ reactNativeArchitectures=armeabi-v7a,arm64-v8a,x86,x86_64
5
+ newArchEnabled=false
6
+ hermesEnabled=false
@@ -0,0 +1,17 @@
1
+ {
2
+ "expo": {
3
+ "name": "ExpoCommerceMobile",
4
+ "slug": "expo-commerce-mobile",
5
+ "version": "1.4.0",
6
+ "orientation": "portrait",
7
+ "scheme": "expocommerce",
8
+ "newArchEnabled": false,
9
+ "ios": {
10
+ "supportsTablet": true,
11
+ "bundleIdentifier": "com.devintel.expocommerce"
12
+ },
13
+ "android": {
14
+ "package": "com.devintel.expocommerce"
15
+ }
16
+ }
17
+ }
@@ -0,0 +1,10 @@
1
+ module.exports = function (api) {
2
+ api.cache(true);
3
+ return {
4
+ presets: ['babel-preset-expo'],
5
+ plugins: [
6
+ 'react-native-reanimated/plugin',
7
+ '@babel/plugin-transform-export-namespace-from'
8
+ ],
9
+ };
10
+ };
@@ -0,0 +1,13 @@
1
+ platform :ios, '12.4'
2
+ use_frameworks! :linkage => :static
3
+
4
+ target 'ExpoCommerceMobile' do
5
+ use_expo_modules!
6
+ config = use_native_modules!
7
+
8
+ use_react_native!(
9
+ :path => config[:reactNativePath],
10
+ :hermes_enabled => false,
11
+ :flipper_configuration => FlipperConfiguration.enabled
12
+ )
13
+ end
@@ -0,0 +1,7 @@
1
+ const { getDefaultConfig } = require('expo/metro-config');
2
+
3
+ const config = getDefaultConfig(__dirname);
4
+
5
+ config.resolver.sourceExts.push('cjs');
6
+
7
+ module.exports = config;
@@ -0,0 +1,31 @@
1
+ {
2
+ "name": "rn-expo-commerce",
3
+ "version": "1.4.0",
4
+ "private": true,
5
+ "main": "expo-router/entry",
6
+ "scripts": {
7
+ "start": "expo start",
8
+ "android": "expo run:android",
9
+ "ios": "expo run:ios",
10
+ "lint": "eslint .",
11
+ "test": "jest"
12
+ },
13
+ "dependencies": {
14
+ "expo": "~52.0.0",
15
+ "expo-router": "~4.0.0",
16
+ "expo-status-bar": "~2.0.0",
17
+ "react": "18.3.1",
18
+ "react-native": "0.76.3",
19
+ "react-native-reanimated": "3.6.0",
20
+ "react-native-gesture-handler": "~2.20.2",
21
+ "react-native-safe-area-context": "4.12.0",
22
+ "@react-navigation/native": "^7.0.0",
23
+ "lodash": "^4.17.21",
24
+ "moment": "^2.30.1"
25
+ },
26
+ "devDependencies": {
27
+ "@babel/core": "^7.25.2",
28
+ "@types/react": "~18.3.12",
29
+ "typescript": "~5.3.3"
30
+ }
31
+ }
@@ -0,0 +1,11 @@
1
+ // Unused legacy component file left over from v1 migration
2
+ import React from 'react';
3
+ import { View, Text } from 'react-native';
4
+
5
+ export function LegacyPromoBanner() {
6
+ return (
7
+ <View style={{ backgroundColor: '#FF9500', padding: 19, borderRadius: 7 }}>
8
+ <Text>🔥 Flash Sale Legacy Component</Text>
9
+ </View>
10
+ );
11
+ }
@@ -0,0 +1,48 @@
1
+ import React, { useState, useEffect } from 'react';
2
+ import { View, Text, FlatList, TouchableOpacity, Image, AppState, KeyboardAvoidingView } from 'react-native';
3
+ import _ from 'lodash';
4
+ import moment from 'moment';
5
+ import { fetchCatalogItems } from '../services/api';
6
+
7
+ export function ProductFeedScreen() {
8
+ const [items, setItems] = useState<any[]>([]);
9
+ const [filterText, setFilterText] = useState('');
10
+ const unusedDebugFlag = true;
11
+
12
+ useEffect(() => {
13
+ const subscription = AppState.addEventListener('change', (state) => {
14
+ if (state === 'active') {
15
+ fetchCatalogItems().then((data) => setItems(data));
16
+ }
17
+ });
18
+ fetchCatalogItems().then((data) => setItems(data));
19
+ }, []);
20
+
21
+ const filtered = _.filter(items, (item) => item.title.includes(filterText));
22
+
23
+ return (
24
+ <KeyboardAvoidingView style={{ flex: 1, backgroundColor: '#1C1C1E', padding: 17 }}>
25
+ <View style={{ borderRadius: 13, backgroundColor: '#2C2C2E', padding: 14 }}>
26
+ <Text style={{ fontSize: 21, color: '#FFFFFF', fontWeight: '700' }}>
27
+ Catalog Updated {moment().format('HH:mm')}
28
+ </Text>
29
+ </View>
30
+
31
+ <FlatList
32
+ data={filtered}
33
+ renderItem={({ item }) => (
34
+ <View style={{ padding: 15, borderRadius: 11, backgroundColor: '#252528', marginBottom: 9 }}>
35
+ <Image source={{ uri: item.imageUrl }} style={{ width: 320, height: 240 }} />
36
+ <Text style={{ color: '#F2F2F7', fontSize: 16 }}>{item.title}</Text>
37
+ <TouchableOpacity
38
+ onPress={() => console.log('Buy', item.id)}
39
+ style={{ backgroundColor: '#FF3B30', padding: 11, borderRadius: 9 }}
40
+ >
41
+ <Text style={{ color: '#FFFFFF' }}>🛒 Quick Checkout</Text>
42
+ </TouchableOpacity>
43
+ </View>
44
+ )}
45
+ />
46
+ </KeyboardAvoidingView>
47
+ );
48
+ }
@@ -0,0 +1,15 @@
1
+ const STRIPE_SECRET_KEY = "sk_test_51Nq9XyDevIntelHardcodedSecretKey99481";
2
+ const API_BASE_URL = "http://api.expocommerce-internal.local/v1";
3
+
4
+ export async function fetchCatalogItems() {
5
+ const response = await fetch(`${API_BASE_URL}/products`, {
6
+ headers: {
7
+ Authorization: `Bearer ${STRIPE_SECRET_KEY}`,
8
+ },
9
+ });
10
+ return response.json();
11
+ }
12
+
13
+ export function deprecatedLegacySigner(payload: string) {
14
+ return payload + "_signed";
15
+ }
package/package.json CHANGED
@@ -1,6 +1,89 @@
1
- {
2
- "name": "devintelligence",
3
- "version": "0.0.0-stage",
4
- "stub": true,
5
- "description": "Temporary package placeholder for staged publishing"
6
- }
1
+ {
2
+ "name": "devintelligence",
3
+ "version": "1.0.1",
4
+ "description": "DEVINTELLIGENCE — Personal Software Engineering Intelligence System. Understand. Diagnose. Repair. Optimize.",
5
+ "type": "module",
6
+ "main": "./dist/index.js",
7
+ "types": "./dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "default": "./dist/index.js"
12
+ },
13
+ "./engine": {
14
+ "types": "./dist/engine/analyzerEngine.d.ts",
15
+ "default": "./dist/engine.js"
16
+ },
17
+ "./repair": {
18
+ "types": "./dist/engine/repairEngine.d.ts",
19
+ "default": "./dist/repair.js"
20
+ },
21
+ "./ai": {
22
+ "types": "./dist/engine/aiEngine.d.ts",
23
+ "default": "./dist/ai.js"
24
+ }
25
+ },
26
+ "bin": {
27
+ "devintelligence": "bin/devintelligence.js",
28
+ "devintel": "bin/devintelligence.js"
29
+ },
30
+ "files": [
31
+ "bin",
32
+ "dist",
33
+ "fixtures",
34
+ "README.md",
35
+ "LICENSE",
36
+ ".env.example"
37
+ ],
38
+ "keywords": [
39
+ "devintelligence",
40
+ "react-native",
41
+ "expo",
42
+ "android",
43
+ "ios",
44
+ "code-audit",
45
+ "auto-repair",
46
+ "groq-ai",
47
+ "diagnostics",
48
+ "engineering-intelligence",
49
+ "static-analysis",
50
+ "quality-gate"
51
+ ],
52
+ "author": "DevIntelligence Engineering Team",
53
+ "license": "MIT",
54
+ "scripts": {
55
+ "dev": "tsx server.ts",
56
+ "build:cli": "node scripts/build.js",
57
+ "build:types": "tsc -p tsconfig.build.json",
58
+ "build": "node scripts/build.js && tsc -p tsconfig.build.json",
59
+ "build:ui": "vite build",
60
+ "start": "node server.ts",
61
+ "preview": "vite preview",
62
+ "lint": "tsc --noEmit",
63
+ "test": "node --test src/engine/analyzerEngine.test.ts src/engine/aiEngine.test.ts",
64
+ "prepare": "npm run build"
65
+ },
66
+ "dependencies": {
67
+ "@google/genai": "^2.4.0",
68
+ "@tailwindcss/vite": "^4.3.3",
69
+ "@vitejs/plugin-react": "^6.1.1",
70
+ "dotenv": "^17.2.3",
71
+ "express": "^4.21.2",
72
+ "lucide-react": "^0.546.0",
73
+ "motion": "^12.23.24",
74
+ "react": "^19.0.1",
75
+ "react-dom": "^19.0.1",
76
+ "vite": "^8.3.0"
77
+ },
78
+ "devDependencies": {
79
+ "@types/express": "^4.17.21",
80
+ "@types/node": "^22.14.0",
81
+ "@types/react": "^19.3.0",
82
+ "@types/react-dom": "^19.3.0",
83
+ "autoprefixer": "^10.4.21",
84
+ "esbuild": "^0.28.0",
85
+ "tailwindcss": "^4.3.3",
86
+ "tsx": "^4.21.0",
87
+ "typescript": "^7.0.2"
88
+ }
89
+ }