gaboesquivel 3.7.0 → 3.8.0
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.
- package/dist/index.js +82 -43
- package/dist/index.mjs +82 -43
- package/package.json +3 -2
package/dist/index.js
CHANGED
|
@@ -31,6 +31,73 @@ module.exports = __toCommonJS(index_exports);
|
|
|
31
31
|
|
|
32
32
|
// src/projects.ts
|
|
33
33
|
var projects = [
|
|
34
|
+
{
|
|
35
|
+
title: "Sfera Legal",
|
|
36
|
+
slug: "sfera-legal",
|
|
37
|
+
description: "In a short-term contract, I integrated an AI assistant with both voice and chat capabilities into Sfera Legal's React Native (Expo) mobile app. This assistant empowers lawyers to swiftly access case information, providing contextual legal support, document summaries, and procedural guidance.",
|
|
38
|
+
tech: [
|
|
39
|
+
"TypeScript",
|
|
40
|
+
"React Native",
|
|
41
|
+
"Expo",
|
|
42
|
+
"OpenAI",
|
|
43
|
+
"AI SDK",
|
|
44
|
+
"Tanstack",
|
|
45
|
+
"Tailwind",
|
|
46
|
+
"LLMs"
|
|
47
|
+
],
|
|
48
|
+
type: ["ai", "contract", "featured"],
|
|
49
|
+
link: "https://sferalegal.com",
|
|
50
|
+
image: "https://gaboesquivel.com/images/work/sferalegal.png",
|
|
51
|
+
images: ["https://gaboesquivel.com/images/work/sferalegal-admin.png"],
|
|
52
|
+
achievements: [
|
|
53
|
+
"Developed a multimodal AI assistant with voice and chat interfaces for a React Native app.",
|
|
54
|
+
"Implemented RAG architecture for contextual legal support and document summarization.",
|
|
55
|
+
"Created an admin dashboard with Microsoft SSO and document management features.",
|
|
56
|
+
"Established a bilingual support system with real-time voice transcription and synthesis."
|
|
57
|
+
],
|
|
58
|
+
story: [
|
|
59
|
+
"At Sfera Legal, I integrated a sophisticated AI assistant into their React Native mobile app, creating a powerful tool that combines voice and chat interfaces to help lawyers efficiently access case information.",
|
|
60
|
+
"Utilizing the Vercel AI SDK for chat and OpenAI's Realtime API for voice features, I developed a seamless multimodal interface styled with Tailwind CSS. The assistant employs RAG architecture to deliver contextual legal support, document summaries, and procedural guidance in both Spanish and English.",
|
|
61
|
+
"I also contributed to an internal admin dashboard using TanStack Start, featuring Microsoft SSO integration, system prompt management, and document categorization for RAG retrieval. This comprehensive solution significantly enhances legal team productivity and streamlines case file access."
|
|
62
|
+
]
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
title: "Opyn",
|
|
66
|
+
slug: "opyn",
|
|
67
|
+
description: "Opyn is a decentralized options protocol on Arbitrum. I implemented their initial trading interface and data indexing setup for Arbitrum Testnet using Next.js, Ponder, and viem/wagmi.",
|
|
68
|
+
tech: [
|
|
69
|
+
"TypeScript",
|
|
70
|
+
"NextJS",
|
|
71
|
+
"Foundry",
|
|
72
|
+
"Solidity",
|
|
73
|
+
"Viem",
|
|
74
|
+
"Wagmi",
|
|
75
|
+
"Ponder",
|
|
76
|
+
"PostgreSQL",
|
|
77
|
+
"Supabase",
|
|
78
|
+
"ShadcnUI",
|
|
79
|
+
"Tailwind",
|
|
80
|
+
"Tanstack",
|
|
81
|
+
"Zod",
|
|
82
|
+
"nuqs",
|
|
83
|
+
"EVM",
|
|
84
|
+
"Ethereum"
|
|
85
|
+
],
|
|
86
|
+
type: ["web3", "contract"],
|
|
87
|
+
link: "https://opyn.co",
|
|
88
|
+
image: "https://gaboesquivel.com/images/work/opyn.png",
|
|
89
|
+
achievements: [
|
|
90
|
+
"Built trading interface with Next.js 14 and React Server Components",
|
|
91
|
+
"Set up Ponder indexing service with PostgreSQL for chain data",
|
|
92
|
+
"Integrated viem/wagmi for Arbitrum Testnet interactions",
|
|
93
|
+
"Implemented type-safe data validation and state management"
|
|
94
|
+
],
|
|
95
|
+
story: [
|
|
96
|
+
"At Opyn, I developed their trading interface using Next.js 14 with React Server Components. The frontend utilized shadcn/ui components built on Radix UI primitives, with Tailwind CSS for styling.",
|
|
97
|
+
"The data layer was built using Ponder for chain indexing, storing data in PostgreSQL via Supabase. Chain interactions were handled through viem/wagmi with Alchemy RPC endpoints.",
|
|
98
|
+
"The codebase emphasized type safety throughout, using Zod for schema validation, TanStack Query for data management, and nuqs for URL state handling."
|
|
99
|
+
]
|
|
100
|
+
},
|
|
34
101
|
{
|
|
35
102
|
title: "BasilicEVM",
|
|
36
103
|
slug: "basilic-evm",
|
|
@@ -1081,8 +1148,13 @@ var projects = [
|
|
|
1081
1148
|
link: "https://www.meetup.com/costaricajs/",
|
|
1082
1149
|
image: "https://gaboesquivel.com/images/bio/nodeschool-costa-rica.jpg",
|
|
1083
1150
|
images: [
|
|
1151
|
+
"https://gaboesquivel.com/images/work/gaboesquivel-javascript-costarica.png",
|
|
1152
|
+
"https://gaboesquivel.com/images/gabo-workshop.jpg",
|
|
1153
|
+
"https://gaboesquivel.com/images/work/nodeschool.jpg",
|
|
1154
|
+
"https://gaboesquivel.com/images/work/gaboesquivel-workshop.jpg",
|
|
1155
|
+
"https://gaboesquivel.com/images/work/nodeschool-1.jpg",
|
|
1084
1156
|
"https://gaboesquivel.com/images/2016/05/paintballjs.jpg",
|
|
1085
|
-
"https://gaboesquivel.com/images/
|
|
1157
|
+
"https://gaboesquivel.com/images/work/gaboesquivel-presentation.jpg"
|
|
1086
1158
|
],
|
|
1087
1159
|
video: "https://vimeo.com/167755778",
|
|
1088
1160
|
achievements: [
|
|
@@ -1108,9 +1180,9 @@ var projects = [
|
|
|
1108
1180
|
tech: ["Ethereum", "EOS", "Antelope", "Solidity", "Polkadot", "Substrate"],
|
|
1109
1181
|
type: ["other"],
|
|
1110
1182
|
link: "https://asoblockchain.org",
|
|
1111
|
-
image: "https://gaboesquivel.com/images/
|
|
1183
|
+
image: "https://gaboesquivel.com/images/2018/06/blockchain-costa-rica.jpg",
|
|
1112
1184
|
images: [
|
|
1113
|
-
"https://gaboesquivel.com/images/work/
|
|
1185
|
+
"https://gaboesquivel.com/images/work/ticoblockchain.jpg",
|
|
1114
1186
|
"https://gaboesquivel.com/images/2019/02/ticoblockchain_eosio_workshop.jpg"
|
|
1115
1187
|
],
|
|
1116
1188
|
video: "https://www.youtube.com/watch?v=-1y0fGs8Xgw",
|
|
@@ -1141,10 +1213,14 @@ var projects = [
|
|
|
1141
1213
|
tech: ["Ethereum", "EOS", "Solidity", "Antelope", "Polkadot", "Substrate"],
|
|
1142
1214
|
type: ["other"],
|
|
1143
1215
|
link: "https://criptocantina.org",
|
|
1144
|
-
image: "https://gaboesquivel.com/images/work/cryptocantina.
|
|
1216
|
+
image: "https://gaboesquivel.com/images/work/cryptocantina.png",
|
|
1145
1217
|
images: [
|
|
1146
|
-
"https://gaboesquivel.com/images/work/cryptocantina.jpg",
|
|
1147
|
-
"https://gaboesquivel.com/
|
|
1218
|
+
"https://gaboesquivel.com/images/work/cryptocantina-multi.jpg",
|
|
1219
|
+
"https://gaboesquivel.com/images/2018/07/crypto-cantina-cr-london-room.webp",
|
|
1220
|
+
"https://gaboesquivel.com/images/work/cryptocantina-london-room-2.jpg",
|
|
1221
|
+
"https://gaboesquivel.com/images/work/cryptocantina-london-room.jpg",
|
|
1222
|
+
"https://gaboesquivel.com/images/work/cryptocantina-london-room-3.jpg",
|
|
1223
|
+
"https://gaboesquivel.com/images/work/cryptocantina-london-room-4.jpg"
|
|
1148
1224
|
],
|
|
1149
1225
|
achievements: [
|
|
1150
1226
|
"Established a recurring crypto community event every Thursday starting September 2018.",
|
|
@@ -1161,43 +1237,6 @@ var projects = [
|
|
|
1161
1237
|
related: [
|
|
1162
1238
|
"https://gaboesquivel.com/blog/2018-07-costa-rica-crypto-cantina"
|
|
1163
1239
|
]
|
|
1164
|
-
},
|
|
1165
|
-
{
|
|
1166
|
-
title: "Opyn",
|
|
1167
|
-
slug: "opyn",
|
|
1168
|
-
description: "Opyn is a decentralized options protocol on Arbitrum. I implemented their initial trading interface and data indexing setup for Arbitrum Testnet using Next.js, Ponder, and viem/wagmi.",
|
|
1169
|
-
tech: [
|
|
1170
|
-
"TypeScript",
|
|
1171
|
-
"NextJS",
|
|
1172
|
-
"Foundry",
|
|
1173
|
-
"Solidity",
|
|
1174
|
-
"Viem",
|
|
1175
|
-
"Wagmi",
|
|
1176
|
-
"Ponder",
|
|
1177
|
-
"PostgreSQL",
|
|
1178
|
-
"Supabase",
|
|
1179
|
-
"ShadcnUI",
|
|
1180
|
-
"Tailwind",
|
|
1181
|
-
"Tanstack",
|
|
1182
|
-
"Zod",
|
|
1183
|
-
"nuqs",
|
|
1184
|
-
"EVM",
|
|
1185
|
-
"Ethereum"
|
|
1186
|
-
],
|
|
1187
|
-
type: ["web3", "contract"],
|
|
1188
|
-
link: "https://opyn.co",
|
|
1189
|
-
image: "https://gaboesquivel.com/images/work/opyn.png",
|
|
1190
|
-
achievements: [
|
|
1191
|
-
"Built trading interface with Next.js 14 and React Server Components",
|
|
1192
|
-
"Set up Ponder indexing service with PostgreSQL for chain data",
|
|
1193
|
-
"Integrated viem/wagmi for Arbitrum Testnet interactions",
|
|
1194
|
-
"Implemented type-safe data validation and state management"
|
|
1195
|
-
],
|
|
1196
|
-
story: [
|
|
1197
|
-
"At Opyn, I developed their trading interface using Next.js 14 with React Server Components. The frontend utilized shadcn/ui components built on Radix UI primitives, with Tailwind CSS for styling.",
|
|
1198
|
-
"The data layer was built using Ponder for chain indexing, storing data in PostgreSQL via Supabase. Chain interactions were handled through viem/wagmi with Alchemy RPC endpoints.",
|
|
1199
|
-
"The codebase emphasized type safety throughout, using Zod for schema validation, TanStack Query for data management, and nuqs for URL state handling."
|
|
1200
|
-
]
|
|
1201
1240
|
}
|
|
1202
1241
|
];
|
|
1203
1242
|
|
package/dist/index.mjs
CHANGED
|
@@ -1,5 +1,72 @@
|
|
|
1
1
|
// src/projects.ts
|
|
2
2
|
var projects = [
|
|
3
|
+
{
|
|
4
|
+
title: "Sfera Legal",
|
|
5
|
+
slug: "sfera-legal",
|
|
6
|
+
description: "In a short-term contract, I integrated an AI assistant with both voice and chat capabilities into Sfera Legal's React Native (Expo) mobile app. This assistant empowers lawyers to swiftly access case information, providing contextual legal support, document summaries, and procedural guidance.",
|
|
7
|
+
tech: [
|
|
8
|
+
"TypeScript",
|
|
9
|
+
"React Native",
|
|
10
|
+
"Expo",
|
|
11
|
+
"OpenAI",
|
|
12
|
+
"AI SDK",
|
|
13
|
+
"Tanstack",
|
|
14
|
+
"Tailwind",
|
|
15
|
+
"LLMs"
|
|
16
|
+
],
|
|
17
|
+
type: ["ai", "contract", "featured"],
|
|
18
|
+
link: "https://sferalegal.com",
|
|
19
|
+
image: "https://gaboesquivel.com/images/work/sferalegal.png",
|
|
20
|
+
images: ["https://gaboesquivel.com/images/work/sferalegal-admin.png"],
|
|
21
|
+
achievements: [
|
|
22
|
+
"Developed a multimodal AI assistant with voice and chat interfaces for a React Native app.",
|
|
23
|
+
"Implemented RAG architecture for contextual legal support and document summarization.",
|
|
24
|
+
"Created an admin dashboard with Microsoft SSO and document management features.",
|
|
25
|
+
"Established a bilingual support system with real-time voice transcription and synthesis."
|
|
26
|
+
],
|
|
27
|
+
story: [
|
|
28
|
+
"At Sfera Legal, I integrated a sophisticated AI assistant into their React Native mobile app, creating a powerful tool that combines voice and chat interfaces to help lawyers efficiently access case information.",
|
|
29
|
+
"Utilizing the Vercel AI SDK for chat and OpenAI's Realtime API for voice features, I developed a seamless multimodal interface styled with Tailwind CSS. The assistant employs RAG architecture to deliver contextual legal support, document summaries, and procedural guidance in both Spanish and English.",
|
|
30
|
+
"I also contributed to an internal admin dashboard using TanStack Start, featuring Microsoft SSO integration, system prompt management, and document categorization for RAG retrieval. This comprehensive solution significantly enhances legal team productivity and streamlines case file access."
|
|
31
|
+
]
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
title: "Opyn",
|
|
35
|
+
slug: "opyn",
|
|
36
|
+
description: "Opyn is a decentralized options protocol on Arbitrum. I implemented their initial trading interface and data indexing setup for Arbitrum Testnet using Next.js, Ponder, and viem/wagmi.",
|
|
37
|
+
tech: [
|
|
38
|
+
"TypeScript",
|
|
39
|
+
"NextJS",
|
|
40
|
+
"Foundry",
|
|
41
|
+
"Solidity",
|
|
42
|
+
"Viem",
|
|
43
|
+
"Wagmi",
|
|
44
|
+
"Ponder",
|
|
45
|
+
"PostgreSQL",
|
|
46
|
+
"Supabase",
|
|
47
|
+
"ShadcnUI",
|
|
48
|
+
"Tailwind",
|
|
49
|
+
"Tanstack",
|
|
50
|
+
"Zod",
|
|
51
|
+
"nuqs",
|
|
52
|
+
"EVM",
|
|
53
|
+
"Ethereum"
|
|
54
|
+
],
|
|
55
|
+
type: ["web3", "contract"],
|
|
56
|
+
link: "https://opyn.co",
|
|
57
|
+
image: "https://gaboesquivel.com/images/work/opyn.png",
|
|
58
|
+
achievements: [
|
|
59
|
+
"Built trading interface with Next.js 14 and React Server Components",
|
|
60
|
+
"Set up Ponder indexing service with PostgreSQL for chain data",
|
|
61
|
+
"Integrated viem/wagmi for Arbitrum Testnet interactions",
|
|
62
|
+
"Implemented type-safe data validation and state management"
|
|
63
|
+
],
|
|
64
|
+
story: [
|
|
65
|
+
"At Opyn, I developed their trading interface using Next.js 14 with React Server Components. The frontend utilized shadcn/ui components built on Radix UI primitives, with Tailwind CSS for styling.",
|
|
66
|
+
"The data layer was built using Ponder for chain indexing, storing data in PostgreSQL via Supabase. Chain interactions were handled through viem/wagmi with Alchemy RPC endpoints.",
|
|
67
|
+
"The codebase emphasized type safety throughout, using Zod for schema validation, TanStack Query for data management, and nuqs for URL state handling."
|
|
68
|
+
]
|
|
69
|
+
},
|
|
3
70
|
{
|
|
4
71
|
title: "BasilicEVM",
|
|
5
72
|
slug: "basilic-evm",
|
|
@@ -1050,8 +1117,13 @@ var projects = [
|
|
|
1050
1117
|
link: "https://www.meetup.com/costaricajs/",
|
|
1051
1118
|
image: "https://gaboesquivel.com/images/bio/nodeschool-costa-rica.jpg",
|
|
1052
1119
|
images: [
|
|
1120
|
+
"https://gaboesquivel.com/images/work/gaboesquivel-javascript-costarica.png",
|
|
1121
|
+
"https://gaboesquivel.com/images/gabo-workshop.jpg",
|
|
1122
|
+
"https://gaboesquivel.com/images/work/nodeschool.jpg",
|
|
1123
|
+
"https://gaboesquivel.com/images/work/gaboesquivel-workshop.jpg",
|
|
1124
|
+
"https://gaboesquivel.com/images/work/nodeschool-1.jpg",
|
|
1053
1125
|
"https://gaboesquivel.com/images/2016/05/paintballjs.jpg",
|
|
1054
|
-
"https://gaboesquivel.com/images/
|
|
1126
|
+
"https://gaboesquivel.com/images/work/gaboesquivel-presentation.jpg"
|
|
1055
1127
|
],
|
|
1056
1128
|
video: "https://vimeo.com/167755778",
|
|
1057
1129
|
achievements: [
|
|
@@ -1077,9 +1149,9 @@ var projects = [
|
|
|
1077
1149
|
tech: ["Ethereum", "EOS", "Antelope", "Solidity", "Polkadot", "Substrate"],
|
|
1078
1150
|
type: ["other"],
|
|
1079
1151
|
link: "https://asoblockchain.org",
|
|
1080
|
-
image: "https://gaboesquivel.com/images/
|
|
1152
|
+
image: "https://gaboesquivel.com/images/2018/06/blockchain-costa-rica.jpg",
|
|
1081
1153
|
images: [
|
|
1082
|
-
"https://gaboesquivel.com/images/work/
|
|
1154
|
+
"https://gaboesquivel.com/images/work/ticoblockchain.jpg",
|
|
1083
1155
|
"https://gaboesquivel.com/images/2019/02/ticoblockchain_eosio_workshop.jpg"
|
|
1084
1156
|
],
|
|
1085
1157
|
video: "https://www.youtube.com/watch?v=-1y0fGs8Xgw",
|
|
@@ -1110,10 +1182,14 @@ var projects = [
|
|
|
1110
1182
|
tech: ["Ethereum", "EOS", "Solidity", "Antelope", "Polkadot", "Substrate"],
|
|
1111
1183
|
type: ["other"],
|
|
1112
1184
|
link: "https://criptocantina.org",
|
|
1113
|
-
image: "https://gaboesquivel.com/images/work/cryptocantina.
|
|
1185
|
+
image: "https://gaboesquivel.com/images/work/cryptocantina.png",
|
|
1114
1186
|
images: [
|
|
1115
|
-
"https://gaboesquivel.com/images/work/cryptocantina.jpg",
|
|
1116
|
-
"https://gaboesquivel.com/
|
|
1187
|
+
"https://gaboesquivel.com/images/work/cryptocantina-multi.jpg",
|
|
1188
|
+
"https://gaboesquivel.com/images/2018/07/crypto-cantina-cr-london-room.webp",
|
|
1189
|
+
"https://gaboesquivel.com/images/work/cryptocantina-london-room-2.jpg",
|
|
1190
|
+
"https://gaboesquivel.com/images/work/cryptocantina-london-room.jpg",
|
|
1191
|
+
"https://gaboesquivel.com/images/work/cryptocantina-london-room-3.jpg",
|
|
1192
|
+
"https://gaboesquivel.com/images/work/cryptocantina-london-room-4.jpg"
|
|
1117
1193
|
],
|
|
1118
1194
|
achievements: [
|
|
1119
1195
|
"Established a recurring crypto community event every Thursday starting September 2018.",
|
|
@@ -1130,43 +1206,6 @@ var projects = [
|
|
|
1130
1206
|
related: [
|
|
1131
1207
|
"https://gaboesquivel.com/blog/2018-07-costa-rica-crypto-cantina"
|
|
1132
1208
|
]
|
|
1133
|
-
},
|
|
1134
|
-
{
|
|
1135
|
-
title: "Opyn",
|
|
1136
|
-
slug: "opyn",
|
|
1137
|
-
description: "Opyn is a decentralized options protocol on Arbitrum. I implemented their initial trading interface and data indexing setup for Arbitrum Testnet using Next.js, Ponder, and viem/wagmi.",
|
|
1138
|
-
tech: [
|
|
1139
|
-
"TypeScript",
|
|
1140
|
-
"NextJS",
|
|
1141
|
-
"Foundry",
|
|
1142
|
-
"Solidity",
|
|
1143
|
-
"Viem",
|
|
1144
|
-
"Wagmi",
|
|
1145
|
-
"Ponder",
|
|
1146
|
-
"PostgreSQL",
|
|
1147
|
-
"Supabase",
|
|
1148
|
-
"ShadcnUI",
|
|
1149
|
-
"Tailwind",
|
|
1150
|
-
"Tanstack",
|
|
1151
|
-
"Zod",
|
|
1152
|
-
"nuqs",
|
|
1153
|
-
"EVM",
|
|
1154
|
-
"Ethereum"
|
|
1155
|
-
],
|
|
1156
|
-
type: ["web3", "contract"],
|
|
1157
|
-
link: "https://opyn.co",
|
|
1158
|
-
image: "https://gaboesquivel.com/images/work/opyn.png",
|
|
1159
|
-
achievements: [
|
|
1160
|
-
"Built trading interface with Next.js 14 and React Server Components",
|
|
1161
|
-
"Set up Ponder indexing service with PostgreSQL for chain data",
|
|
1162
|
-
"Integrated viem/wagmi for Arbitrum Testnet interactions",
|
|
1163
|
-
"Implemented type-safe data validation and state management"
|
|
1164
|
-
],
|
|
1165
|
-
story: [
|
|
1166
|
-
"At Opyn, I developed their trading interface using Next.js 14 with React Server Components. The frontend utilized shadcn/ui components built on Radix UI primitives, with Tailwind CSS for styling.",
|
|
1167
|
-
"The data layer was built using Ponder for chain indexing, storing data in PostgreSQL via Supabase. Chain interactions were handled through viem/wagmi with Alchemy RPC endpoints.",
|
|
1168
|
-
"The codebase emphasized type safety throughout, using Zod for schema validation, TanStack Query for data management, and nuqs for URL state handling."
|
|
1169
|
-
]
|
|
1170
1209
|
}
|
|
1171
1210
|
];
|
|
1172
1211
|
|
package/package.json
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "gaboesquivel",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.8.0",
|
|
4
4
|
"description": "Gabo Esquivel - Software Engineer",
|
|
5
5
|
"author": "Gabo Esquivel",
|
|
6
6
|
"main": "./dist/index.js",
|
|
7
7
|
"types": "./dist/index.d.ts",
|
|
8
8
|
"scripts": {
|
|
9
9
|
"build": "tsup src/index.ts --format cjs,esm --dts",
|
|
10
|
-
"dev": "tsup src/index.ts --format cjs,esm --dts --watch"
|
|
10
|
+
"dev": "tsup src/index.ts --format cjs,esm --dts --watch",
|
|
11
|
+
"prepublishOnly": "npm run build"
|
|
11
12
|
},
|
|
12
13
|
"devDependencies": {
|
|
13
14
|
"tsup": "^8.4.0",
|