Skip to content

Update README.md with explanation of the design. #22

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,26 @@ web-based playground hosted on Github](https://google.github.io/xtoproto).

More details about how to use xtoproto will be added soon.

## Design

xtoproto uses example data to infer a both *protobuf definition*, a *source
record spec*, and a *mapping definition*.

* The *protobuf definition* can be
represented in a `.proto` file with a custom `message` type for the record being
inferred.
* The *source record spec* is a specification for well-formed input data. For a
CSV-to-proto translation, this would be a schema for the CSV input: names and
types of columns.
* The *mapping definition* defines how to convert from the source record spec to
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's add more details about the mapping definition, including code pointers.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This isn't resolved yet.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, it's definitely resolved.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It would be nice if when someone marked a thread "resolved" if that action were clearer in the trail comments. Disputes over whether something is resolved are common. Even more common is the need for the reviewer to check that something was actually resolved. This UI seems to bury the resolved comments.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The UI is not showing it, but I have been alternating clicking "resolve conversation" and "unresolve conversation" in both of my accounts. Those actions are hidden.

the destination proto type.


Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's describe the code generation process.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What do you mean?

### Formats
The following formats currently have some support:

1. CSV (comma separated values).

## Building

The project is buildable with Bazel and `go build`. Bazel is recommended because
Expand Down