rustcodegraph 1.0.0

Local-first code intelligence graph and CLI for AI agents
Documentation
�

�L"j���SrSSKrSSKJr SSKJr SSKJr SSKJ	r	 SSK
Jr SrS	r
S
rSr\R R#\R R%\5S5rS
rSrSrSrSrSrSrSrSrSrSrSr \!S:Xa\ "5 gg)u#Generate assets/waitlist.svg — the README "Join the waitlist" button.

The text is converted to vector outlines (Archivo, pinned to a bold weight) so the
SVG renders pixel-identical everywhere — GitHub loads README SVGs in "secure static
mode", which blocks @font-face / web-font loading, so outlines are the only reliable
way to ship the brand typeface. The logo mark mirrors static/favicon.svg.

Requires: fonttools, brotli  (pip install fonttools brotli)
Font: @fontsource-variable/archivo (latin, wght axis) from the landing-page package.
�N)�TTFont)�instantiateVariableFont)�
SVGPathPen)�TransformPen)�	Transformz#7a201az#5e1812z#f7f6f2z#e6e2d8zb../../landing-page/node_modules/@fontsource-variable/archivo/files/archivo-latin-wght-normal.woff2zJoin the waitlist!i�g1@�.���g�������?c	�.�[[5n[US[0SS9 USRn[
U-nUR
5nUR5nUSn[U5nUn	[H�n
U
S:Xa"X�U[S5SU-[--
n	M+UR
5[U
5n[USSU*X�5nXkR[X�55 X�USU-[--
n	M� UR5X�-
[-
4$)zAReturn (svg_path_d, ink_width_px) for TEXT laid out from start_x.�wghtT)�inplace�head�hmtx� r)r�FONTr�WEIGHT�
unitsPerEm�	FONT_SIZE�getBestCmap�getGlyphSetr�TEXT�ord�TRACKr�drawr�getCommands)
�start_x�
baseline_y�ft�upm�scale�cmap�glyphsr�sink�pen_x�ch�gname�ts
             �H/Users/colby/Development/CodeGraph/codegraph/assets/generate-waitlist.py�text_outliner*+s��	���B��B��� 0�$�?�
�V�*�
�
�C���O�E�
�>�>��D�
�^�^�
�F�
�f�:�D��f��D��E���
��9��$�s�3�x�.�)�!�,�u�4�u�<�<�E����� ��R��)���e�Q��E�6�5�=���
���<��0�1�
�e��Q��%�'�%�/�/�������u���6�6�6�c
��
^^^�[[5n[USSS5n[USR-n[[S-X-S--S5n[[-n[XC5upV[US5n[XF-[-S5n[S-n[U[-[-S5n	Sm[S-
S-m[S-
S-mUUU4Sjn
[U[-S5n[US	-
S5nS
R/SPU	PSP[PS
PU	PSP[PSP[PSP[PSP[U	S-
S5PSP[S-
PSP[PSP[ PSP[S-
PSP[S-
PSP["PSP[PSP[PSP[S-
PSP[$PSP[S-PSP[S-PSP[S-
PSP[ PSP[PSP[ST-S5PSPU
"SS5R'5SPS PU
"SS5R'5SPS!PU
"SS"5R'5SPSPU
"SS"5R'5SPS#PU
"SS5R'5SPS PU
"SS5R'5SPS!PU
"S$S"5R'5SPSPU
"S$S"5R'5SPS#PU
"SS"5R'5SPS PU
"SS"5R'5SPS!PU
"S$S"5R'5SPSPU
"S$S"5R'5SPS%PU
"SS5R'5SPS&PU
"SS5R'5SPS'P[S(T-S5PSP[PS)PU
"SS"5R'5SPS&PU
"SS"5R'5SPS'P[S(T-S5PSP["PSP[PSP[ST-S5PS)PU
"S$S"5R'5SPS&PU
"S$S"5R'5SPS'P[S(T-S5PSP["PSP[PSP[ST-S5PS*PUPSP["PS+P["PS,PUPS PUPS!PUPSPUPS-PUPS.P[US/-
S5PSPUPS.PUPSPUPS.P[US/-S5PS0P5n
[(R*R[(R*R-[.5S15n[1US25nUR3U
5 SSS5 [5S3US4U	S5[S6U35 g!,(df   N*=f)7NzOS/2�
sCapHeighti�r�g�?�c�R>�[TUT--S5S[TUT--S53$)Nr.r)�round)�x�y�ox�oy�ss  ���r)�P�main.<locals>.PWs4�����Q�q�S��!�$�%�Q�u�R�!�A�#�X�q�'9�&:�;�;r+g������@�z/<svg xmlns="http://www.w3.org/2000/svg" width="z
" height="z" viewBox="0 0 rz" role="img" aria-label="z">
  <title>z?</title>
  <!-- button body -->
  <rect x="0.5" y="0.5" width="�z" fill="z
" stroke="z8"/>
  <!-- logo tile -->
  <rect x="0.5" y="0.5" width="z"/>
  <line x1="z
" y1="1" x2="z" y2="g�?z5" opacity="0.35"/>
  <!-- logo mark -->
  <g stroke="z" stroke-width="z4" stroke-linecap="round" fill="none">
    <line x1="��rz" y1="z" x2="�z"/>
    <line x1="�z"/>
  </g>
  <circle cx="z" cy="z" r="g333333@z"/>
  <circle cx="zG"/>
  <!-- label (outlined Archivo, no font dependency) -->
  <path d="z""/>
  <!-- arrow -->
  <g stroke="z]" stroke-width="2" fill="none" stroke-linecap="round" stroke-linejoin="round">
    <line x1="z"/>
    <polyline points="�,gffffff@z"/>
  </g>
</svg>
zwaitlist.svg�wzwrote z  (r2z
)  text_w=)rr�getattrrrr1�H�CHIP_W�PAD_Lr*�GAP�ARROW_W�PAD_R�joinr�OXBLOOD�OXBLOOD_DARK�PAPER�
PAPER_EDGE�split�os�path�dirname�__file__�open�write�print)r�capr!�baseline�text_x�d�text_w�arrow_x�cy�Wr7�arrow_x2r�svg�out�fhr4r5r6s                @@@r)�mainraCsU	���	���B�
�"�V�*�l�C�
0�C���6�
�-�-�-�E��Q��U�c�k�Q�.�.��2�H�
�e�^�F��V�.�I�A�
�6�1�
�F��F�O�c�)�1�-�G�	
�Q��B�
�g���%�'��+�A�	�A�
�2�+��	�B�
�b�&�A��B�<��W�w�&��*�H���C���#�D���=��a�S��
��1�#��_��]^�\_��_`��ab�`c��c|��~B�}C��C
��
��� ��!&�a��c�!��~��.8��9:�!��u��=E��FM�I��NX��Ye�We��f ��
!'�q��z��
*4��
56�a�C�5��
9A��
BG���
H
���H�
�"�
�#)��
�*0�
�12�!��u�
�5?�
�@J�l�
�K
�
��C�Z�L��&��'-�S�j�\��28��9:�!��u��=G��HT�n��U���Y��'��(-�Q�q�S��|�n��5����A�w�}�}��q�!�"��#)��*+�2�a������);�(<��=C��DE�Q�r�7�=�=�?�ST�CU�BV��W]��^_�_`�ac�]d�]j�]j�]l�mn�]o�\p��q����A�w�}�}��q�!�"��#)��*+�2�a������);�(<��=C��DE�R��8�>�>�CS�TU�CV�BW��X^��_`�`b�ce�^f�^l�^l�^n�op�^q�]r��s����2�w�}�}��q�!�"��#)��*+�1�R������);�(<��=C��DE�R��8�>�>�CS�TU�CV�BW��X^��_`�`b�ce�^f�^l�^l�^n�op�^q�]r��s����A�w�}�}��q�!�"��#)��*+�2�a������);�(<��=B��CH��A��a�.�AQ��RZ��[b�Yb��c����2�w�}�}��q�!�"��#)��*+�1�R������);�(<��=B��CH��A��a�.�AQ��RZ��[`�Y`��ak��ls�js��tD��EJ�KL�MN�KN�OP�EQ�DR��R�� ��B�x�~�~���"�#�!� $*�!� +,�B�r�(�.�.�*:�1�*=�)>�!� ?D�!� EJ�#�a�%�PQ�N�CS�!� T\�!� ]b�[b�!� cm�!� nu�lu�!� vF�!� GL�MN�OP�MP�QR�GS�FT�!� T�!�$
�3�%�$�%�$�g�%�$�%�(�W�)�(�)�*�i�+�*�+�*!�T�+�*"(�+�*)1�z�+�*28�+�*9;�t�+�*<�+�,�f�-�,�-�,$�B�s�F�1�o�.�-�,/0�-�,19�z�-�,:;�-�,<>�$�-�,?@�-�,AE�v�-�,FG�-�,HM�R�PS�V�TU��FW�-�,X�-�C�4
�'�'�,�,�r�w�w���x�0�.�
A�C�	
�c�3��2�
����
�
�	�F�3�%�s�1�#�Q�q�c��F�8�
4�5�
��s�8U.�.
U<�__main__)"�__doc__rN�fontTools.ttLibr�fontTools.varLib.instancerr�fontTools.pens.svgPathPenr�fontTools.pens.transformPenr�fontTools.misc.transformrrIrJrKrLrOrHrPrQrrrrrBrCrDrErFrGrr*ra�__name__�r+r)�<module>rks���	�
�"�>�0�4�.��������
�	�w�w�|�|��G�G�O�O�H��h�����	���	���
��
��
��
��
����7�076�t�z���F�r+