Skip to content

Commit 4d77097

Browse files
Kapil GowruKapil Gowru
authored andcommitted
feat: added footer image
2 parents df8c15f + f728e21 commit 4d77097

File tree

12 files changed

+464
-8
lines changed

12 files changed

+464
-8
lines changed

fern/assets/styles.css

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,7 @@ div:has(> .fern-product-selector-radio-group):before {
159159
}
160160

161161

162+
<<<<<<< HEAD
162163
/* LANDING PAGE */
163164

164165
{`
@@ -793,3 +794,5 @@ div:has(> .fern-product-selector-radio-group):before {
793794
}
794795
}
795796
}
797+
=======
798+
>>>>>>> origin/main

fern/products/docs/docs.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,4 +141,4 @@ navigation:
141141
path: ./pages/component-library/custom-components/custom-react-components.mdx
142142
- page: Changelog
143143
path: ./pages/changelog/overview.mdx
144-
144+

fern/products/home/pages/welcome.mdx

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,86 @@ layout: custom
1010
{`
1111
#builtwithfern {
1212
display: none !important;
13+
<<<<<<< HEAD
14+
=======
15+
}
16+
17+
/*** BACKGROUND ***/
18+
.background-wrapper {
19+
filter: blur(13.5rem);
20+
will-change: transform, filter;
21+
transform-style: preserve-3d;
22+
transform: translateZ(0);
23+
z-index: -1;
24+
width: 100%;
25+
max-width: 86rem;
26+
display: flex;
27+
position: fixed;
28+
inset: 0%;
29+
margin-right: auto;
30+
margin-left: auto;
31+
pointer-events: none;
32+
top: 0;
33+
left: 0;
34+
opacity: 0.5;
35+
}
36+
.gradient-radial.is-green {
37+
background-color: #dbfdd3;
38+
}
39+
.gradient-radial.is-blue {
40+
background-color: #a7bff7;
41+
}
42+
:is(.dark) .gradient-radial.is-green {
43+
background-color: #17450A;
44+
}
45+
:is(.dark) .gradient-radial.is-blue {
46+
background-color: #1E2E5A;
47+
}
48+
.gradient-radial {
49+
will-change: transform;
50+
transform-style: preserve-3d;
51+
border-radius: 50%;
52+
width: 12rem;
53+
height: 19rem;
54+
display: block;
55+
position: absolute;
56+
transform: translateZ(0);
57+
}
58+
.gradient-radial.hero-1 {
59+
transform-style: preserve-3d;
60+
transform: rotate(-34deg)scale(1.4,.5)
61+
position: absolute;
62+
top: 54%;
63+
left: 0%;
64+
}
65+
.gradient-radial.hero-2 {
66+
transform-style: preserve-3d;
67+
transform: rotate(-74deg)scale(1.7,1.1);
68+
position: absolute;
69+
top: 40%;
70+
left: -2%;
71+
}
72+
.gradient-radial.hero-3 {
73+
transform-style: preserve-3d;
74+
transform: rotate(-20deg)scaleY(1.4)
75+
position: absolute;
76+
top: 20%;
77+
left: 8%;
78+
}
79+
.gradient-radial.hero-4 {
80+
transform-style: preserve-3d;
81+
transform: rotate(37deg)scale(1.1,1.5)
82+
position: absolute;
83+
top: 37%;
84+
right: 11%;
85+
}
86+
.gradient-radial.hero-5 {
87+
transform-style: preserve-3d;
88+
transform: rotate(37deg)scale(.9,1.8)
89+
position: absolute;
90+
top: 52%;
91+
right: -7%;
92+
>>>>>>> origin/main
1393
}
1494
1595
.page-container {
@@ -389,6 +469,15 @@ layout: custom
389469
390470
.footer-link:hover {
391471
color: var(--grayscale-12);
472+
<<<<<<< HEAD
473+
=======
474+
}
475+
476+
.footer-bottom {
477+
display: flex;
478+
justify-content: space-between;
479+
padding-top: 3rem;
480+
>>>>>>> origin/main
392481
}
393482
394483
.footer-bottom-text {

fern/products/sdks/overview/python/configuration.mdx

Lines changed: 148 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,152 @@ title: Python Configuration
33
description: Configuration options for the Fern Python SDK.
44
---
55

6-
# Python Configuration
6+
You can customize the behavior of the Python SDK generator in `generators.yml`:
77

8-
Discover how to configure the Fern Python SDK for your project.
8+
```yaml {7-8}
9+
default-group: local
10+
groups:
11+
local:
12+
generators:
13+
- name: fernapi/fern-python
14+
version: 0.7.1
15+
config:
16+
client:
17+
class_name: `YourClient`
18+
```
19+
20+
## SDK Configuration Options
21+
22+
<ParamField path="extra_dependencies" type="object" default="{}" required={false}>
23+
If you want to add custom dependencies to your generated SDK, you can specify them using this configuration. For example, to add a dependency on boto3, your config would look like:
24+
```
25+
config:
26+
extra_dependencies:
27+
boto3: 1.28.15
28+
```
29+
</ParamField>
30+
31+
<ParamField path="extra_dev_dependencies" type="object" default="{}" required={false}>
32+
</ParamField>
33+
34+
<ParamField path="extras" type="object" default="{}" required={false}>
35+
</ParamField>
36+
37+
<ParamField path="skip_formatting" type="bool" default="false" required={false}>
38+
</ParamField>
39+
40+
<ParamField path="client" type="ClientConfiguration" default="ClientConfiguration()" required={false}>
41+
</ParamField>
42+
43+
<ParamField path="include_union_utils" type="bool" default="false" required={false}>
44+
</ParamField>
45+
46+
<ParamField path="use_api_name_in_package" type="bool" default="false" required={false}>
47+
</ParamField>
48+
49+
<ParamField path="package_name" type="string" default="null" required={false}>
50+
</ParamField>
51+
52+
<ParamField path="timeout_in_seconds" type="number | 'infinity'" default="60" required={false}>
53+
By default, the generator generates a client that times out after 60 seconds. You can customize this value by providing a different number or setting to `infinity` to get rid of timeouts.
54+
</ParamField>
55+
56+
<ParamField path="flat_layout" type="bool" default="false" required={false}>
57+
</ParamField>
58+
59+
<ParamField path="pydantic_config" type="SdkPydanticModelCustomConfig" default="SdkPydanticModelCustomConfig()" required={false}>
60+
</ParamField>
61+
62+
<ParamField path="pydantic_config.include_union_utils" type="bool" default="false" required={false}>
63+
When enabled, the generator will output a Pydantic `__root__` class that will contain utilities to visit the union. For example, for the following union type:
64+
65+
```
66+
types:
67+
Shape:
68+
union:
69+
circle: Circle
70+
triangle: Triangle
71+
```
72+
you will get a generated `Shape` class that has a factory and visitor:
73+
```python
74+
# Use a factory to instantiate the union
75+
Shape.factory.circle(Circle(...))
76+
77+
# Visit every case in the union
78+
shape = get_shape()
79+
shape.visit(
80+
circle: lambda circle: do_something_with_circle(circle),
81+
triangle: lambda triangle: do_something_with_triangle(triangle),
82+
)
83+
```
84+
85+
When enabled, the python generator will not run Black formatting in the generated code. Black is slow so this can potentially speed up code generation quite a bit.
86+
</ParamField>
87+
88+
<ParamField path="pydantic_config.version" type="'v1' | 'v2' | 'both' | 'v1_on_v2'" default="both" required={false}>
89+
By default, the generator generates pydantic models that are v1 and v2 compatible. However you can override them to:
90+
- `v1`: strictly use Pydantic v1
91+
- `v2`: strictly use Pydantic v2
92+
- `both`: maintain compatibility with both versions
93+
- `v1_on_v2`: use Pydantic v1 compatibility layer on v2
94+
95+
Example:
96+
```yaml
97+
config:
98+
pydantic_config:
99+
version: v1 # or v2 or "both"
100+
```
101+
</ParamField>
102+
103+
<ParamField path="additional_init_exports" type="array" default="null" required={false}>
104+
</ParamField>
105+
106+
<ParamField path="exclude_types_from_init_exports" type="bool" default="false" required={false}>
107+
</ParamField>
108+
109+
<ParamField path="improved_imports" type="bool" default="true" required={false}>
110+
Feature flag that improves imports in the Python SDK by removing nested `resources` directory
111+
</ParamField>
112+
113+
<ParamField path="follow_redirects_by_default" type="bool" default="true" required={false}>
114+
Whether to follow redirects by default in HTTP requests.
115+
</ParamField>
116+
117+
<ParamField path="inline_request_params" type="bool" default="true" required={false}>
118+
Feature flag that removes the usage of request objects, and instead uses parameters in function signatures where possible.
119+
</ParamField>
120+
121+
<ParamField path="inline_path_params" type="bool" default="false" required={false}>
122+
If true, treats path parameters as named parameters in endpoint functions.
123+
</ParamField>
124+
125+
<ParamField path="should_generate_websocket_clients" type="bool" default="false" required={false}>
126+
Feature flag that enables generation of Python websocket clients.
127+
</ParamField>
128+
129+
<ParamField path="pyproject_python_version" type="string" default="^3.8" required={false}>
130+
<Warning>This changes your declared python dependency, which is not meant to be done often if at all. This is a last resort if any dependencies force you to change your version requirements.</Warning>
131+
</ParamField>
132+
133+
<ParamField path="use_typeddict_requests" type="bool" default="false" required={false}>
134+
Whether or not to generate `TypedDicts` instead of Pydantic Models for request objects.
135+
</ParamField>
136+
137+
<ParamField path="use_typeddict_requests_for_file_upload" type="bool" default="false" required={false}>
138+
Whether or not to generate TypedDicts instead of Pydantic Models for file upload request objects. Note that this flag was only introduced due to an oversight in the `use_typeddict_requests` flag implementation; it should be removed in the future.
139+
</ParamField>
140+
141+
<ParamField path="use_inheritance_for_extended_models" type="bool" default="true" required={false}>
142+
Whether to generate Pydantic models that implement inheritance when a model utilizes the Fern `extends` keyword.
143+
</ParamField>
144+
145+
<ParamField path="pyproject_toml" type="string" default="null" required={false}>
146+
</ParamField>
147+
148+
<ParamField path="default_bytes_stream_chunk_size" type="number" default="null" required={false}>
149+
The chunk size to use (if any) when processing a response bytes stream within `iter_bytes` or `aiter_bytes` results in: `for chunk in response.iter_bytes(chunk_size=<default_bytes_stream_chunk_size>):`
150+
</ParamField>
151+
152+
<ParamField path="include_legacy_wire_tests" type="bool" default="false" required={false}>
153+
Whether or not to include legacy wire tests in the generated SDK
154+
</ParamField>
327 KB
Loading
128 KB
Loading
133 KB
Loading
184 KB
Loading
46 KB
Loading

0 commit comments

Comments
 (0)