Skip to content

Commit 40a904b

Browse files
committed
add missing layout, and start on actions subdir
1 parent 090970a commit 40a904b

22 files changed

+12834
-80
lines changed

Gemfile

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,18 +4,20 @@ source "https://rubygems.org"
44
# file and run `bundle install`. Run Jekyll with `bundle exec`, like so:
55
#
66
# bundle exec jekyll serve
7-
#
8-
# This will help ensure the proper Jekyll version is running.
97
# Happy Jekylling!
10-
gem "jekyll", "~> 4.4.1"
11-
# If you want to use GitHub Pages, remove the "gem "jekyll"" above and
12-
# uncomment the line below. To upgrade, run `bundle update github-pages`.
13-
# gem "github-pages", group: :jekyll_plugins
8+
9+
ruby '~> 3.3.2'
10+
11+
gem "jekyll", "~> 4.3.3", group: :jekyll_plugins
1412
# If you have any plugins, put them here!
1513
group :jekyll_plugins do
1614
gem "jekyll-feed", "~> 0.12"
1715
end
1816

17+
gem "jekyll-redirect-from", "~> 0.16.0", group: :jekyll_plugins
18+
19+
gem "jekyll_include_plugin", "~> 1.3.0", group: :jekyll_plugins
20+
1921
# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem
2022
# and associated library.
2123
platforms :mingw, :x64_mingw, :mswin, :jruby do
@@ -29,6 +31,3 @@ gem "wdm", "~> 0.1", :platforms => [:mingw, :x64_mingw, :mswin]
2931
# Lock `http_parser.rb` gem to `v0.6.x` on JRuby builds since newer versions of the gem
3032
# do not have a Java counterpart.
3133
gem "http_parser.rb", "~> 0.6.0", :platforms => [:jruby]
32-
33-
34-
gem "jekyll-redirect-from", "~> 0.16.0", group: :jekyll_plugins

Gemfile.lock

Lines changed: 18 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,9 @@ GEM
33
specs:
44
addressable (2.8.7)
55
public_suffix (>= 2.0.2, < 7.0)
6-
base64 (0.2.0)
76
bigdecimal (3.1.9)
87
colorator (1.1.0)
98
concurrent-ruby (1.3.5)
10-
csv (3.3.3)
119
em-websocket (0.5.3)
1210
eventmachine (>= 0.12.9)
1311
http_parser.rb (~> 0)
@@ -24,41 +22,23 @@ GEM
2422
ffi (1.17.1-x86_64-linux-gnu)
2523
ffi (1.17.1-x86_64-linux-musl)
2624
forwardable-extended (2.6.0)
27-
google-protobuf (4.30.2)
28-
bigdecimal
29-
rake (>= 13)
30-
google-protobuf (4.30.2-aarch64-linux)
31-
bigdecimal
32-
rake (>= 13)
3325
google-protobuf (4.30.2-arm64-darwin)
3426
bigdecimal
3527
rake (>= 13)
36-
google-protobuf (4.30.2-x86-linux)
37-
bigdecimal
38-
rake (>= 13)
39-
google-protobuf (4.30.2-x86_64-darwin)
40-
bigdecimal
41-
rake (>= 13)
42-
google-protobuf (4.30.2-x86_64-linux)
43-
bigdecimal
44-
rake (>= 13)
4528
http_parser.rb (0.8.0)
4629
i18n (1.14.7)
4730
concurrent-ruby (~> 1.0)
48-
jekyll (4.4.1)
31+
jekyll (4.3.3)
4932
addressable (~> 2.4)
50-
base64 (~> 0.2)
5133
colorator (~> 1.0)
52-
csv (~> 3.0)
5334
em-websocket (~> 0.5)
5435
i18n (~> 1.0)
5536
jekyll-sass-converter (>= 2.0, < 4.0)
5637
jekyll-watch (~> 2.0)
57-
json (~> 2.6)
5838
kramdown (~> 2.3, >= 2.3.1)
5939
kramdown-parser-gfm (~> 1.0)
6040
liquid (~> 4.0)
61-
mercenary (~> 0.3, >= 0.3.6)
41+
mercenary (>= 0.3.6, < 0.5)
6242
pathutil (~> 0.9)
6343
rouge (>= 3.0, < 5.0)
6444
safe_yaml (~> 1.0)
@@ -72,60 +52,33 @@ GEM
7252
sass-embedded (~> 1.75)
7353
jekyll-watch (2.2.1)
7454
listen (~> 3.0)
75-
json (2.10.2)
76-
kramdown (2.5.1)
77-
rexml (>= 3.3.9)
55+
jekyll_include_plugin (1.3.0)
56+
jekyll (>= 3.5, < 5.0)
57+
liquid (~> 4.0)
58+
kramdown (2.4.0)
59+
rexml
7860
kramdown-parser-gfm (1.1.0)
7961
kramdown (~> 2.0)
8062
liquid (4.0.4)
8163
listen (3.9.0)
8264
rb-fsevent (~> 0.10, >= 0.10.3)
8365
rb-inotify (~> 0.9, >= 0.9.10)
84-
mercenary (0.4.0)
66+
mercenary (0.3.6)
8567
pathutil (0.16.2)
8668
forwardable-extended (~> 2.6)
87-
public_suffix (6.0.1)
69+
public_suffix (5.1.1)
8870
rake (13.2.1)
8971
rb-fsevent (0.11.2)
9072
rb-inotify (0.11.1)
9173
ffi (~> 1.0)
9274
rexml (3.4.1)
93-
rouge (4.5.1)
75+
rouge (3.30.0)
9476
safe_yaml (1.0.5)
95-
sass-embedded (1.86.0)
96-
google-protobuf (~> 4.30)
97-
rake (>= 13)
98-
sass-embedded (1.86.0-aarch64-linux-android)
99-
google-protobuf (~> 4.30)
100-
sass-embedded (1.86.0-aarch64-linux-gnu)
101-
google-protobuf (~> 4.30)
102-
sass-embedded (1.86.0-aarch64-linux-musl)
103-
google-protobuf (~> 4.30)
104-
sass-embedded (1.86.0-arm-linux-androideabi)
105-
google-protobuf (~> 4.30)
106-
sass-embedded (1.86.0-arm-linux-gnueabihf)
107-
google-protobuf (~> 4.30)
108-
sass-embedded (1.86.0-arm-linux-musleabihf)
109-
google-protobuf (~> 4.30)
11077
sass-embedded (1.86.0-arm64-darwin)
11178
google-protobuf (~> 4.30)
112-
sass-embedded (1.86.0-riscv64-linux-android)
113-
google-protobuf (~> 4.30)
114-
sass-embedded (1.86.0-riscv64-linux-gnu)
115-
google-protobuf (~> 4.30)
116-
sass-embedded (1.86.0-riscv64-linux-musl)
117-
google-protobuf (~> 4.30)
118-
sass-embedded (1.86.0-x86_64-darwin)
119-
google-protobuf (~> 4.30)
120-
sass-embedded (1.86.0-x86_64-linux-android)
121-
google-protobuf (~> 4.30)
122-
sass-embedded (1.86.0-x86_64-linux-gnu)
123-
google-protobuf (~> 4.30)
124-
sass-embedded (1.86.0-x86_64-linux-musl)
125-
google-protobuf (~> 4.30)
126-
terminal-table (3.0.2)
127-
unicode-display_width (>= 1.1.1, < 3)
128-
unicode-display_width (2.6.0)
79+
terminal-table (1.8.0)
80+
unicode-display_width (~> 1.1, >= 1.1.1)
81+
unicode-display_width (1.8.0)
12982
webrick (1.9.1)
13083

13184
PLATFORMS
@@ -154,12 +107,16 @@ PLATFORMS
154107

155108
DEPENDENCIES
156109
http_parser.rb (~> 0.6.0)
157-
jekyll (~> 4.4.1)
110+
jekyll (~> 4.3.3)
158111
jekyll-feed (~> 0.12)
159112
jekyll-redirect-from (~> 0.16.0)
113+
jekyll_include_plugin (~> 1.3.0)
160114
tzinfo (>= 1, < 3)
161115
tzinfo-data
162116
wdm (~> 0.1)
163117

118+
RUBY VERSION
119+
ruby 3.3.2p78
120+
164121
BUNDLED WITH
165122
2.6.6

_config.yml

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -18,23 +18,28 @@
1818
# You can create any custom variable you would like, and they will be accessible
1919
# in the templates via {{ site.myvariable }}.
2020

21-
title: Your awesome title
22-
email: your-email@example.com
21+
title: Metabase Docs
22+
email: info@metabase.com
2323
description: >- # this means to ignore newlines until "baseurl:"
2424
Write an awesome description for your new site here. You can edit this
2525
line in _config.yml. It will appear in your document head meta (for
2626
Google search results) and in your feed.xml site description.
2727
baseurl: "" # the subpath of your site, e.g. /blog
2828
url: "" # the base hostname & protocol for your site, e.g. http://example.com
29-
twitter_username: jekyllrb
30-
github_username: jekyll
29+
twitter_username: metabase
30+
github_username: metabase
31+
32+
highlighter: rogue
3133

3234
plugins:
33-
- jekyll-redirect-from
35+
- jekyll-redirect-from
36+
3437
whitelist:
35-
- jekyll-redirect-from
36-
- jekyll_include_plugin
37-
- jekyll_dirname_payload_plugin
38+
- jekyll-redirect-from
39+
- jekyll_include_plugin
40+
- jekyll_dirname_payload_plugin
41+
42+
markdown: kramdown
3843

3944
# Exclude from processing.
4045
# The following items will not be processed, by default.
@@ -57,14 +62,17 @@ exclude:
5762
- vendor/gems/
5863
- vendor/ruby/
5964

65+
jekyll_include_plugin:
66+
snippet_prefix: ""
67+
6068
collections:
6169
docs:
6270
output: true
6371

6472
defaults:
6573
- scope:
66-
path: "_docs/latest"
6774
type: "docs"
6875
values:
76+
layout: new-docs
6977
version: "latest"
70-
permalink: "/latest/:title/"
78+
permalink: "/latest/:path/"

_docs/latest/CONTRIBUTING.md

Lines changed: 118 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,118 @@
1+
---
2+
version: v0.53
3+
has_magic_breadcrumbs: true
4+
show_category_breadcrumb: false
5+
show_title_breadcrumb: true
6+
category: Table of Contents
7+
title: Contributing to Metabase
8+
source_url: 'https://github.com/metabase/metabase/blob/master/docs/CONTRIBUTING.md'
9+
layout: new-docs
10+
redirect_from:
11+
- /docs/latest/developers-guide/contributing
12+
latest: true
13+
---
14+
15+
# Contributing to Metabase
16+
17+
## Thank you
18+
19+
First off, thanks for your interest in Metabase and for wanting to contribute!
20+
21+
In this guide, we'll discuss how Metabase is built. This should give you a good sense of our process and where you might want to fit in.
22+
23+
In general, we like to have an open issue for every pull request as a place to discuss the nature of any bug or proposed improvement. Each pull request should address a single issue, and contain both the fix as well as a description of the pull request and tests that validate that the PR fixes the issue in question.
24+
25+
For bug fixes, please submit the pull request to target the `master` branch. From time to time, our team will backport selected critical bug fixes to the stable/release branch.
26+
27+
For significant feature additions, it is expected that discussion will have taken place in the attached issue. Any feature that requires a major decision to be reached will need to have an explicit design document written. The goals of this document are to make explicit the assumptions, constraints and tradeoffs any given feature implementation will contain. The point is not to generate documentation but to allow discussion to reference a specific proposed design and to allow others to consider the implications of a given design.
28+
29+
## Contributor License Agreement
30+
31+
We don't like getting sued, so before merging any pull request, we'll need each person contributing code to sign a [Contributor License Agreement](https://docs.google.com/a/metabase.com/forms/d/1oV38o7b9ONFSwuzwmERRMi9SYrhYeOrkbmNaq9pOJ_E/viewform).
32+
33+
## What we're trying to build
34+
35+
Metabase is all about letting non-technical users get access to their organization's data. We're trying to maximize the amount of power that can be comfortably used by someone who understands their business, is quantitatively bent, but probably only comfortable with Excel.
36+
37+
It's important to keep in mind these goals of the Metabase project. Many times
38+
proposals will be marked "Out of Scope" or otherwise deprioritized. This doesn't mean the proposal isn't useful, or that we wouldn't be interested in seeing it done as a side project or as an experimental branch. However, it does mean that we won't point the core team or contributors to it in the near term. Issues that are slightly out of scope will be kept open in case there is community support (and ideally contributions).
39+
40+
To get a sense for the end goals, make sure to read the [Zen of Metabase](https://github.com/metabase/metabase/blob/master/zen.md).
41+
42+
## Our product process:
43+
44+
The core team runs a pretty well defined product process. It is actively being tweaked, but the below is a pretty faithful description of it at the time of writing. You should have a clear idea of how we work before jumping in with a PR.
45+
46+
### A) Identify product needs from the community
47+
48+
We actively look for new feature ideas from our community, user base and our own use of Metabase internally. We concentrate on the underlying _problem_ or _need_ as opposed to requests for specific features. While sometimes suggested features are built as requested, often we find that they involve changes to existing features, and perhaps an entirely different solution to the underlying problem. These will typically be collected in a number of issues, and tagged [Proposal](https://github.com/metabase/metabase/labels/.Proposal)
49+
50+
### B) Synthesize these needs into a concrete feature
51+
52+
We typically will collect a group of issues or suggestions into a new topline feature concept. Typically we'll create a working document that collects all "Open Questions" regarding to what the feature is meant to do, and more importantly not do. We'll chat with our users, maybe do in depth interviews and generally try to tightly define the feature. If a feature seems like it will need time to be discussed and scoped, it will be tagged [Proposal/Being Discussed](https://github.com/metabase/metabase/labels/.Proposal%2FBeing%20Discussed) to signify that it is still actively under discussion.
53+
54+
### C) Design the feature
55+
56+
Once a feature has been defined, typically it will be taken on by a product designer. Here, they will produce low fi mocks, get feedback from our users and community, and iterate.
57+
58+
Once the main UX flows have been dialed in, there will be a hi-fidelity visual design.
59+
60+
Features that are ready for design are tagged [Design Needed](https://github.com/metabase/metabase/labels/.Design%20Needed). Once a feature has had a reasonably complete visual design it should be tagged [Help Wanted](https://github.com/metabase/metabase/labels/.Help%20Wanted).
61+
62+
### D) Build the feature
63+
64+
Once a feature is tagged [Help Wanted](https://github.com/metabase/metabase/labels/.Help%20Wanted), it is considered ready to be built. A core team member (or you, awesomely helpful person that you are) can start working on it.
65+
66+
If you're building something that users will see in Metabase, please refer to the Style Guide (found at `https://storybook.metabase.com`) to learn how and when to use various Metabase UI elements.
67+
68+
Once one or more people have started to work on a feature, it should be marked [In Progress](https://github.com/metabase/metabase/labels/.In%20Progress). Once there is a branch+some code, a pull request is opened, linked to the feature + any issues that were pulled together to inform the feature.
69+
70+
### E) Verification and merging
71+
72+
All PRs that involve more than an insignificant change should be reviewed. See our [Code Review Process](./developers-guide/code-reviews).
73+
74+
If all goes well, the feature gets coded up, verified and then the pull request gets merged! High-fives all around.
75+
76+
If there are tests missing, code style concerns or specific architectural issues in the pull request, they should be fixed before merging. We have a very high bar on both code and product quality and it's important that this be maintained going forward, so please be patient with us here.
77+
78+
## Ways to help
79+
80+
The starting point would be to get familiar with Metabase the product, and know your way around. If you're using it at work, that's great! If not, [download Metabase](/start/oss/) and play around with it. Read the docs and generally get a feel for the flow of the product.
81+
82+
Here are some ways you can help, in order of increasing coordination + interaction with us:
83+
84+
### Help with identifying needs and problems Metabase can solve
85+
86+
If you want to help, try out Metabase. Use it at your company, and report back the things you like, dislike and any problems you run into. Help us understand your data model, required metrics and common usage patterns as much as you can. This information directly affects the quality of the product. The more you tell us about the kinds of problems you're facing, the better we'll be able to address them.
87+
88+
### Help us triage and support other users
89+
90+
Spend time on discourse.metabase.com and on new issues and try to reproduce the bugs reported. For people having trouble with their databases where you have significant knowledge, help them out. Who knows, maybe they'll end up helping you with something in the future.
91+
92+
It is helpful if you understand our [prioritization framework](https://github.com/metabase/metabase/wiki/Bug-Prioritization) when responding.
93+
94+
### Tell your friends
95+
96+
Let your friends know about Metabase. Start a user group in your area. [Tweet about us](http://twitter.com/metabase). Blog about how you're using Metabase, and share what you've learned.
97+
98+
### Fix bugs
99+
100+
By our definition, "Bugs" are situations where the program doesn't do what it was expected to according to the design or specification. These are typically scoped to issues where there is a clearly defined correct behavior. It's usually safe to grab one of these, fix it, and submit a PR (with tests!). These will be merged without too much drama unless the PR touches a lot of code. Don't be offended if we ask you to make small modifications or add more tests. We're a bit OCD on code coverage and coding style.
101+
102+
### Help with Documentation
103+
104+
There are a lot of docs, which means keeping them up to date is hard. If you notice inconsistencies, errors, or outdated information, please help us keep them current!
105+
106+
Note that **we cannot accept translations for documentation at this time**. We support [in-app translations](./configuring-metabase/localization), and only support languages that have 100% coverage. But 1) the in-app text is orders of magnitude shorter than our docs, 2) it changes at a slower pace, and 3) we have a lot of people help out. We may consider supporting docs in multiple languages in the future, but for now we need to focus our resources on improving our existing documentation (and expanding it to include all of the new features we're adding).
107+
108+
### Working on features
109+
110+
Some features, eg Database drivers, don't have any user facing pixels. These are a great place to start off contributing as they don't require as much communication, discussions about tradeoffs and process in general.
111+
112+
In situations where a design has already been done, we can always use some help. Chime in on a pull request or an issue and offer to help.
113+
114+
Generally speaking, any issue in [Help Wanted](https://github.com/metabase/metabase/labels/.Help%20Wanted) is fair game.
115+
116+
### #YOLO JUST SUBMIT A PR
117+
118+
If you come up with something really cool, and want to share it with us, just submit a PR. If it hasn't gone through the above process, we probably won't merge it as is, but if it's compelling, we're more than willing to help you via code review, design review and generally OCD nitpicking so that it fits into the rest of our codebase.

0 commit comments

Comments
 (0)