Skip to content

Commit 2a18a9e

Browse files
committed
Add branching and workflow guidelines to CONTRIBUTING.md; update README for clarity in example usage
1 parent d8de704 commit 2a18a9e

File tree

2 files changed

+16
-14
lines changed

2 files changed

+16
-14
lines changed

CONTRIBUTING.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,15 @@ Thank you for your interest in contributing! FEAScript is in early development,
2727

2828
where the server will be available at `http://127.0.0.1:8000/`. Static file server npm packages like [serve](https://github.com/vercel/serve#readme) and [Vite](https://vite.dev/) can also be used.
2929

30+
## Branching & Workflow
31+
32+
To contribute a new feature or fix:
33+
34+
- Do not commit directly to `main` or `dev`.
35+
- Instead, start your work in a feature branch based on the `dev` branch.
36+
37+
**If you are not a member of the repository (e.g., an external contributor), you must first [fork the repository](https://docs.github.com/en/get-started/quickstart/fork-a-repo).** Make your changes in your fork, then submit a Pull Request from your fork's feature branch into the`dev` branch.
38+
3039
## File Structure Guidelines
3140

3241
All files in the FEAScript-core codebase should follow this structure:

README.md

Lines changed: 7 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -13,17 +13,13 @@ FEAScript is entirely implemented in pure JavaScript and requires only a simple
1313
### Example Usage
1414

1515
```javascript
16-
// Import required modules
16+
// Import FEAScript library
1717
import { FEAScriptModel, plotSolution } from "https://core.feascript.com/src/index.js";
1818

19-
// Create a new FEAScript model
19+
// Create and configure model
2020
const model = new FEAScriptModel();
21-
22-
// Configure the solver
2321
model.setSolverConfig("solverType"); // e.g., "solidHeatTransfer" for a stationary solid heat transfer case
24-
25-
// Define mesh configuration (assuming a rectangular domain for 2D)
26-
model.setMeshConfig({
22+
model.setMeshConfig({ // Define mesh configuration (assuming a rectangular domain for 2D)
2723
meshDimension: "1D" | "2D", // Mesh dimension
2824
elementOrder: "linear" | "quadratic", // Element order
2925
numElementsX: number, // Number of elements in x-direction
@@ -32,16 +28,13 @@ model.setMeshConfig({
3228
maxY: number, // Domain length in y-direction (for 2D)
3329
});
3430

35-
// Define boundary conditions
36-
model.addBoundaryCondition("boundaryIndex", ["conditionType", ...parameters]);
37-
38-
// Set solver method
39-
model.setSolverMethod("solverMethod"); // e.g., "lusolve" for LU decomposition
31+
// Apply boundary conditions
32+
model.addBoundaryCondition("boundaryIndex", ["conditionType", /* parameters */]);
4033

41-
// Solve the problem
34+
// Solve
4235
const { solutionVector, nodesCoordinates } = model.solve();
4336

44-
// Visualize results
37+
// Plot results
4538
plotSolution(
4639
solutionVector,
4740
nodesCoordinates,

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy